1、这个问题个人感觉是作用域的原因,具体看代码吧。
2、代码
function a() { var i = 99; iAdd = function() { i++; console.log(i) } function b() { console.log(i); } return b; }var result = a(); result();//**打印出99**iAdd(); result();//**打印出100**
3、问题描述:当直接调用一次a(),那么每次的输出结果都是99.
function a() { var i = 99; iAdd = function() { i++; console.log(i) } function b() { console.log(i); } return b; }var result = a(); a(); //**先调用一次a()**result();//**结果为99**iAdd(); result();//**这里结果依然为99,不管调用多少次iAdd()都不会变,除非把a()放到后面。**
4、希望大家能给个详细的解释
倚天杖
相关分类