概述
const关键字
const声明的变量必须 直接初始化且不允许二次赋值,如下代码:
<script type="text/javascript"> const name="Tom"; console.log(name); name="Tim";//报错:TypeError: invalid assignment to const `name' console.log(name); </script>
let关键字
和var一样,let也用于声明变量,那么var声明的变量和let声明的变量有何不同:
a、全局作用域:let声明的变量不会作为全局对象window的属性,而var声明的变量则可以,如下代码:
<script type="text/javascript"> let address="河南省郑州市高新区"; console.log(address); console.log(window.address);//undefined </script>
<script type="text/javascript"> var address="河南省郑州市高新区"; console.log(address); console.log(window.address); </script>
b、函数作用域:和var一样,都用于声明变量,此时两者没有区别:
<script type="text/javascript"> function print(){ var address="河南省郑州市高新区"; console.log(address); } print(); </script>
<script type="text/javascript"> function print(){ let address="河南省郑州市高新区"; console.log(address); } print(); </script>
c、语句块作用域:let声明的变量只能用于语句块作用域内,而var声明的变量还可以在语句块作用域外使用
<script type="text/javascript"> if(true){ let address="河南省郑州市高新区"; console.log(address); } console.log(address);//ReferenceError: address is not defined </script>
<script type="text/javascript"> if(true){ var address="河南省郑州市高新区"; console.log(address); } console.log(address); </script>
d、重复声明:let不能重复声明变量,var则可以
<script type="text/javascript"> let address="河南省郑州市高新区"; let address = "吉林省长春市宽平区"; console.log(address); </script> 错误信息: SyntaxError: redeclaration of let address
<script type="text/javascript"> var address="河南省郑州市高新区"; var address = "吉林省长春市宽平区"; console.log(address);//输出:吉林省长春市宽平区 </script>
最后
以上就是失眠鸵鸟为你收集整理的JavaScript中const、let和var的全部内容,希望文章能够帮你解决JavaScript中const、let和var所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复