网站系统中备案申请表,体育彩票网站开发方案,广告制作公司起名,wordpress进度条插件本文主要讲解ES6中变量的相关操作#xff0c;变量的命名#xff0c; 讲解 var、 let 、 const 三者的区别正文ES6中的 let 和 const 都是用来声明变量的#xff0c; 他们与 var 有所区别let 命令我们都知道在for循环中#xff0c;我们命名的变量 i 一般都只是为了在这个循环…本文主要讲解ES6中变量的相关操作变量的命名 讲解 var、 let 、 const 三者的区别正文ES6中的 let 和 const 都是用来声明变量的 他们与 var 有所区别let 命令我们都知道在for循环中我们命名的变量 i 一般都只是为了在这个循环中使用才临时命名的 我们希望循环结束后这个变量就消失 但是却相反用 var 命名的变量在 for 循环结束后并不会销毁而会存在于全局中。for(var i0; i5; i) {console.log(循环 i)
}
console.log(i)
/* 输出结果 */
循环1
循环2
循环3
循环4
5 // 这里是循环外输出的i 但是如果我们在 for 循环中用到 let 去命名变量会怎么样呢for(let i0; i5; i) {console.log(循环 i)
}
console.log(i)/* 输出结果 */
循环1
循环2
循环3
循环4
undefined // 这里是循环外输出的i,显示未定义这样的话就解决了因为 var 命名导致的变量泄露的问题了, 其实它的本质就是作用域 let 只作用于他自身所在的代码块内而 var 是针对全局都有效的。例如这一个简单的例子{let i 1var n 2
}
console.log(i)
console.log(n)/* 输出结果 */
undefined
2可以看到 let 命名的变量只存在于那个代码块内到外部就访问不到了而 var 就是针对全局命名的。const 命令const 和 let 类似也是命名的变量只能在它所在的代码块内能被访问得到到外部就无法被访问到但是 const 与 let 的区别就在于 const 命名的变量是一个只读变量简而言之就是命名了就无法在后面被修改例如这个例子const a apple
let b orangea watermelon
b banana/* 输出结果 */
a watermelon^显而易见 系统会直接报错 因为 const 命名的变量 a 是无法改变的 后续无法对其进行赋值。其实 const 命名变量以后 也不是说就真的无法改变了 因为const命名时其实是把箭头指向了内存中的一个对象 只要不改变这个对象地址 const 命名的变量还是可以变化的例如const list1 []list1.push(变化1)console.log(list1)// [变化1]可以看到 list1.pish( 变化1 ) 不会改变 变量 list1在内存中的地址。但是 list1 [ 变化1 ] 就会改变 list1 在内存中的地址所以会报错const list1 []list1 [变化1]console.log(list1)// 报错list1 [变化1]^结束语这就是 let 和 const 的简单应用希望这篇文章对大家能有所帮助我是Lpyexplore一个因python爬虫而转入前端的程序员关注我带你爬虫过程中学习Web。公众号Lpyexplore的编程小屋