首页 > 其他 > 详细

typeof

时间:2017-03-10 17:42:26      阅读:145      评论:0      收藏:0      [点我收藏+]
var f = function g() {
        return 23;
    };
typeof g();
如果是typeof f,结果是function
如果是typeof f(),结果是number
如果是typeof g,结果是undefined.
如果是typeof g(),结果是ReferenceError,g is not defined
----------------------------------------------------------------------------------
在 JS 里,声明函数只有 2 种方法:
第 1 种: function foo(){...} (函数声明)
第 2 种: var foo = function(){...} (等号后面必须是匿名函数,这句实质是函数表达式)

除此之外,类似于 var foo = function bar(){...} 这样的东西统一按 2 方法处理,即在函数外部无法通过 bar 访问到函数,因为这已经变成了一个表达式。

但为什么不是 "undefined"?
这里如果求 typeof bar ,会返回 undefined,但求的是 typeof bar(),所以会去先去调用函数 bar(),这里就会直接抛出异常,因为找不到bar函数,所以是 Error。

typeof

原文:http://www.cnblogs.com/aixiuxiu/p/6531568.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!