Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么';在某些情况下,你不喜欢typeof吗?_Javascript_Underscore.js - Fatal编程技术网

Javascript 为什么';在某些情况下,你不喜欢typeof吗?

Javascript 为什么';在某些情况下,你不喜欢typeof吗?,javascript,underscore.js,Javascript,Underscore.js,根据Crockford的说法,好的部分 typeof对于函数、字符串、数字、布尔值和 未定义。null和array都被错误地报告为对象 那么,为什么不在它工作的情况下使用typeof呢?它总是更快,这就是为什么我想知道为什么在这些情况下它不是首选 特别是函数、字符串和数字 这些包装器的目的是捕获装箱的值对象 typeof new Number(1)==“object”除了可读性和更短的代码之外,我认为没有其他真正的原因。如果您想要性能,请签出Lodash。可能的副本是否有任何情况下您希望在库中

根据Crockford的说法,好的部分

typeof对于函数、字符串、数字、布尔值和 未定义。null和array都被错误地报告为对象

那么,为什么不在它工作的情况下使用typeof呢?它总是更快,这就是为什么我想知道为什么在这些情况下它不是首选

特别是函数、字符串和数字


这些包装器的目的是捕获装箱的值对象


typeof new Number(1)==“object”

除了可读性和更短的代码之外,我认为没有其他真正的原因。如果您想要性能,请签出Lodash。可能的副本是否有任何情况下您希望在库中使用typeof?@www.arcmarks.com:如果您不想允许装箱对象。我的印象是,您一般不应该使用装箱对象,因为不需要它们。你知道盒装物品有什么用途吗?这就是为什么使用新号码(1)而不仅仅是
1
  each(['Arguments', 'Function', 'String', 'Number', 'Date', 'RegExp'], function(name) {
    _['is' + name] = function(obj) {
      return toString.call(obj) == '[object ' + name + ']';
    };   });