比较搞笑的js陷阱题

今天看到一段代码,比较有意思,本周就再多加一问。

看如下代码:

复制代码 代码如下:


  var a = function(t) { return t; }
  (1 + 2).toString();
  alert(a);


结果是多少?

其实主要问题出在第一行后面没有分号,所以其实是var a = function(t) { return t; }(1 + 2).toString();
先建立变量a,然后执行赋值语句,匿名函数传入参数1+2执行,返回结果.toString(),赋值给a。
关于这种function() {}()的写法,具体可参看js的命名空间。

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wdspsg.html