文章详情页
javascript - js let 和 var问题
问题描述
为什么用全局变量(var i = 0)无法传入参数,区域变量(let i = 0)却可以
for (var i = 0; i < inputs.length; i++) { inputs[i].onfocus = function(){showTip(i); };};function showTip(n){ tips[n].style.color = 'red';}
问题解答
回答1:日经问题,请自行搜索:闭包、JavaScript的块级作用域
回答2:let 只是在当前块级作用域(for的大括号内)有效,每次循环可看成一个新的变量。可参考阮一峰的 ECMAScript 6 入门 中的let命令
标签:
JavaScript
相关文章:
1. angular.js - angular双向绑定问题2. angular.js - 关于angular的select的问题3. angular.js - 单页面,angular2 路由的懒加载 能实现页面共存吗4. angular.js - karma测试包JASMINE is not defined5. git - hexo怎么创建无模板的静态html?6. 新人做网站求帮助7. java - Mybatis映射问题8. 声明闭包为啥要这么样9. node.js通过module.exprots返回的是promise对象而非data?10. android listview 每行的金额 求总和
排行榜