javascript解析
来源:互联网 发布:希尔伯特变换 c语言 编辑:程序博客网 时间:2024/06/05 11:48
- 作用域
var a = [];for (var i = 0; i < 10; i++) { var c = i; a[i] = function () { console.log(c); };}a[6](); // 9
var a = [];for (var i = 0; i < 10; i++) { let c = i; a[i] = function () { console.log(c); };}a[6](); // 6
使用let方法实际上是把代码改为:
var a = [];for (var i = 0; i < 10; i++) (function(c) { a[i] = function() { console.log(c); }; }(i));a[6]();
首先看a[i]这个函数
a[i] = function () { console.log(c); };
本质上是输出变量c的值,那么变量c的本质就很重要。变量c的本质是什么呢?
用var 时,变量c的作用域是函数,在这里为全局变量,for语句执行完后,c在全局为9,所以a[6] = console.log(c),为9;用let时,变量c的作用域为块(跟c,java一样)
在这里作用域只是在for语句里面,相当于每次循环都给console.log(c)指定了一个值,所以a[6] = console.log(6),为6。
阅读全文
0 0
- javascript解析
- javascript解析
- JavaScript中的DOM解析
- javascript event 事件解析
- JavaScript正则表达式解析
- javascript event 事件解析
- javascript event 事件解析
- javascript event 事件解析
- javascript event 事件解析
- javascript event 事件解析
- javascript event 事件解析
- javascript的节点解析
- JAVASCRIPT 解析XMLDOM
- javascript event 事件解析
- javascript event 事件解析
- javascript event 事件解析
- javascript解析json
- JavaScript解析XML文件
- 第三部分:POJ 1007 解题报告
- Checksum 校验和
- 适配器优化中: //使用内存缓存+使用磁盘缓存+设置图片格式
- 信号源、示波器使用中阻抗匹配问题
- 关于AUC(占坑)
- javascript解析
- SSM框架入门和搭建 十部曲
- 梯度下降法、坐标下降法、牛顿迭代法
- 二级购物车
- Java之Byte和blob相互转换(Oracle)-yellowcong
- HDU 2191 悼念512汶川大地震遇难同胞——珍惜现在,感恩生活(多重背包)
- java excel模板转html
- angularJS项目
- 将本地的静态页面发布,没服务器怎么发布?