js Uncaught TypeError: (intermediate value)

昨天去笔试的时候考了这道题:

var bo = 10;function foo() {  console.log(bo);
}
foo();

(function() {  var bo = 20;
  foo();
})()

(function (func) {  var bo = 30;
  func();
})(foo)

我回来的时候运行了一下,最后一个function发生了一个错误Uncaught TypeError: (intermediate value)(intermediate value)(...) is not a function at <anonymous>:12:1,这是什么意思?

当我单独运行最后一个函数的时候,又不会出错

var bo = 10;function foo() {  console.log(bo);
}
(function (func) {  var bo = 30;
  func();
})(foo)


www说
浏览 1675回答 1
1回答

慕尼黑的夜晚无繁华

加个逗号就不会报错了...应该是()无法自动识别为一个语句不会自动加分号&nbsp; &nbsp; var bo = 10;&nbsp; &nbsp; function foo() {&nbsp; &nbsp; &nbsp; console.log(bo);&nbsp; &nbsp; }&nbsp; &nbsp; foo();&nbsp; &nbsp; (function() {&nbsp; &nbsp; &nbsp; var bo = 20;&nbsp; &nbsp; &nbsp; foo();&nbsp; &nbsp; })();&nbsp; &nbsp; (function (func) {&nbsp; &nbsp; &nbsp; var bo = 30;&nbsp; &nbsp; &nbsp; func();&nbsp; &nbsp; })(foo);&nbsp; &nbsp;&nbsp;
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript