5 个回答

区别就是多了个空格
你要是想换一下顺序也行,结果不变

如果你想说空格有影响的话,你去掉空格也一样。

因为f1 是一个闭包,可以访问到i, 第一次执行f1, 输出i=0,然后i++ 变为1了,
第二次执行时i为1,所以输出1,然后i++了变为2了。
你再运行一下f1()就知道了

这里形成了个闭包。调用一次,就可以在控制台看到调用次数

第一个f1(); 执行的是 i = 0, 并返回了一个函数;
第二个f1(); 执行的是上一个返回的那个函数,也就是 console.log(i++);

这里还考了一个知识点

let a = 1;
console.log(a++);
// 1  这里会取a++ +之前的a值
console.log(++a);
// 3  这里会取a++ +完后的a值
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题