首页 \ 问答 \ JS数据类型澄清(JS data type clarification)

JS数据类型澄清(JS data type clarification)

我目前正在尝试学习JS,并进行了一个练习,我必须将以下值和数据类型放回:

alert(Number(17  / 2 + 1.3))

正确的解决方案是“ 未定义 ”和“未定义”,我不明白为什么? 控制台确实显示9.8的警报。 为什么不是“9.8”和“数字”呢?


I'm currently trying to learn JS and had an exercise where I had to put which value and data type the following would give back:

alert(Number(17  / 2 + 1.3))

The correct solution was "undefined" and "undefined" and I don't understand why? The console does show an alert that says 9.8. Why isn't it "9.8" and "number" then?


原文:https://stackoverflow.com/questions/36035703
更新时间:2023-05-20 10:05

最满意答案

您的类源文件中根本不应包含任何require_once语句。 按照PSR-4规范进行命名。 将您的类放在命名空间中以避免与您可能通过composer包含的其他类冲突。 然后将一个类放在一个文件中,命名与该类相同。 例如,LoginSystem类应该位于名为LoginSystem.php的文件中。

namespace MyNamespace;

class LoginSystem
{
    ...
}

然后设置您的composer.json将您的命名空间指向您的源目录:

"autoload": {
    "psr-4": {
        "MyNamespace\\": "src/"
    }
},

现在,您的主应用程序调用程序或前端控制器应该是包含自动加载器的唯一位置:

require_once 'vendor/autoload.php';
$login = new \MyNamespace\LoginSystem();
...

Your class source files shouldn't have any require_once statements at all in them. Follow the PSR-4 spec for naming. Put your classes in a namespace to avoid collision with other classes you might include via composer. Then put one class in one file, named the same as the class. For example, the LoginSystem class should be in a file named LoginSystem.php.

namespace MyNamespace;

class LoginSystem
{
    ...
}

Then set your composer.json to point your namespace to your source directory:

"autoload": {
    "psr-4": {
        "MyNamespace\\": "src/"
    }
},

Now, your main app invoker or front controller should be the only place that includes the autoloader:

require_once 'vendor/autoload.php';
$login = new \MyNamespace\LoginSystem();
...

相关问答

更多
  • Composer是PHP中的一个依赖管理工具. 它可以让你声明自己项目所依赖的库,然后它将会在项目中为你安装这些库。 依赖管理 Composer不是包管理器。是的,它实际上和"包"或者库打交道,但是它是以项目为单位进行管理,把它们安装到你项目中的一个目录(例如vendor)。默认情况下它不会以全局的方式安装任何东西。因此,它是一个依赖管理器。 这个想法并不新鲜,Composer的灵感是来自于node的npm和ruby的bundler。但是目前PHP还没有一个这样的工具。 Composer解决的问题是: a) ...
  • 给出的命令假定您已将作曲家安装在本地目录中作为.phar文件。 如果你已经全局安装了composer,那么正确的命令就是 composer require 'cakephp/cakephp:3.1.*' 'cakephp/debug_kit:3.2.*' 'cakephp/bake:1.1.*' 如果您根本没有安装作曲家,请按照作曲家网站上的相关说明操作: https : //getcomposer.org/download/ The command given assumes that you've g ...
  • 您必须有一个composer.json来安装依赖项,因为它是列出依赖项的文件。 请参阅文档 。 composer.lock列出已安装的依赖项。 作曲家首先看它,以保持版本一致。 (文档说明)[ https://getcomposer.org/doc/01-basic-usage.md#installing-with-composer-lock] : 当存在composer.lock文件时运行安装会解析并安装您在composer.json中列出的所有依赖项,但Composer会使用composer.lock中 ...
  • https://getcomposer.org/doc/00-intro.md#installation-linux-unix-osx 注意:在OSX Yosemite中,默认情况下/ usr目录不存在。 如果收到错误“/ usr / local / bin / composer:没有这样的文件或目录”,那么在继续之前必须手动创建/ usr / local / bin /。 要创建一个目录,您需要执行: sudo mkdir https://getcomposer.org/doc/00-in ...
  • 您很可能将apc.enable_cli设置为1,您可以使用php -i | grep apc检查 php -i | grep apc 。 另一种检查一切的方法很好,运行composer是以只检查模式运行安装程序: curl -s https://getcomposer.org/installer | php -- --check APC完全打破了PHAR(至少在CLI模式下),并且它无法在CLI中提供任何缓存,因为每个进程都是独立的,因此禁用它是有道理的,该标志仅用于调试目的AFAIK。 Most lik ...
  • Composer正在寻找.composer目录的位置。 导出HOME或COMPOSER_HOME env变量,例如:HOME = / root php /usr/local/bin/composer.phar create-project composer / satisf / var / www / satisf --stability = dev,它会正常工作。 Composer is looking for the location of the .composer directory. Export ...
  • 如果您使用共享主机,则不太可能在主机上使用Composer。 此外,我们不鼓励您在生产中使用Composer。 我建议您在本地使用Composer(在本地计算机的O / S上),编写项目并安装依赖包。 一旦完成所有工作并使用您自己的代码进行测试,您就可以上传整个开发目录树,包括生成的供应商库 - 作为“平面文件”的一个大型FTP / SCP上传。 一旦你变得更高级,你可以冒险进入自动部署技术,但我觉得现在你最好坚持使用Composer作为本地开发工具来管理你的代码库。 更新,进一步细节: Composer实 ...
  • Composer使用/ usr / bin / env来检测您的php版本。 你可以用env php -v找到它的正确版本。 Composer uses /usr/bin/env to detect your php version. You can find it the correct version with env php -v.
  • 您的类源文件中根本不应包含任何require_once语句。 按照PSR-4规范进行命名。 将您的类放在命名空间中以避免与您可能通过composer包含的其他类冲突。 然后将一个类放在一个文件中,命名与该类相同。 例如,LoginSystem类应该位于名为LoginSystem.php的文件中。 namespace MyNamespace; class LoginSystem { ... } 然后设置您的composer.json将您的命名空间指向您的源目录: "autoload": { ...
  • 如果我正确读取您的ASCII艺术,您有四个错误: composer.json位于src目录中。 没关系,但是与自动加载相关的任何路径都与composer.json文件的位置有关,而你的自动加载路径中有src - 错误。 要加载的代码位于bitm目录中。 PSR-4前缀必须以反斜杠结尾。 作曲家可能已经抱怨过这一点。 运行composer validate以查看此错误并可能出现更多错误。 正如您已经使用内部反斜杠所做的那样,它必须在JSON中进行转义,因此它应该读作"bitm\\person\\" 。 PSR ...

相关文章

更多

最新问答

更多
  • 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
  • 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
  • OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
  • 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
  • codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
  • 在计算机拍照在哪里进入
  • 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
  • No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
  • 单页应用程序:页面重新加载(Single Page Application: page reload)
  • 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
  • System.StackOverflow错误(System.StackOverflow error)
  • KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
  • 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
  • android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
  • TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
  • 企业安全培训的各项内容
  • 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
  • C#类名中允许哪些字符?(What characters are allowed in C# class name?)
  • NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
  • 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
  • 将多个行和可变行移动到列(moving multiple and variable rows to columns)
  • 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
  • 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
  • Angular $资源不会改变方法(Angular $resource doesn't change method)
  • 在Angular 5中不是一个函数(is not a function in Angular 5)
  • 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
  • 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
  • 常见的python rpc和cli接口(Common python rpc and cli interface)
  • Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
  • 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)