JavaScript中var、let和const的区别
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了JavaScript中var、let和const的区别,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1159字,纯文字阅读大概需要2分钟。
内容图文
JavaScript中var、let和const的区别
var声明
无论变量在何处被声明,使用关键字var声明的变量,都会被当作在当前作用域顶部声明的,这个现象被称作变量提升。
function getValue(){ if(condition){ var value = 'something'; return value; }else{ return null } }
等价于
function getValue(){ var value; if(condition){ value = 'something'; return value; }else{ return null } }
在循环中,使用var关键字也很容易造成误会
for(var i = 0;i < 10;i++){ console.log(i); }
最终会返回10次10而不是预想中的0到9,并且在循环外也能访问变量i。
在同一作用域下不能重复声明变量,但可以在嵌套的代码块中声明。
在全局作用域中使用var关键字时,会覆盖window对象中的属性;
let声明
使用let声明时,可以把变量的作用域限制在当前代码块中,形成块级作用域,并且没有变量提升的现象。
for(let i = 0 ; i < 10; i++){ console.log(i); }
使用let在循环中可以分别打印0到9
const声明
const声明和let都是块级标识符,执行到代码块外会被销毁;
const声明的常量一旦设定便不能修改,并且必须要进行赋值初始化;
当用const声明对象时,可以修改对象的值,但不能修改变量与对象的绑定。
const person = { name:'jack' }; person.name = 'rose'; //抛出语法错误 person = { name:'greg' };
在全局作用域中使用let,const关键字时,不会覆盖window对象中的属性;
内容总结
以上是互联网集市为您收集整理的JavaScript中var、let和const的区别全部内容,希望文章能够帮你解决JavaScript中var、let和const的区别所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。