编程语言中var和let有什么区别?

2021-05-07 10:43 1156浏览 1回答

编程语言中,都是由很多代码组成的,var和let就在其中,那编程语言中var和let有什么区别?


转载请联系作者获得授权,并标注“文章作者”。

后发表回答
经济师大嗮啊
1楼 · 2021-05-07 10:43.采纳回答

var是函数作用域,而let是块作用域。在函数内声明了var,整个函数内都是有效的,在for循环内定义了一个var变量,实际上其在for循环以外也是可以访问的,而let由于是块作用域,所以如果在块作用域内(for循环内)定义的变量,在其外面是不可被访问的。

1、如果在全局作用域中用var声明变量,此变量会默认成为window的一个属性,let声明的变量则不会添加到window对象中。

2、在es6之前,是没有块级作用域,所谓块级作用域,就是用{}包含的区域,我们常用的有for,while,if等。但是在块级作用域中用let声明变量,那么此变量就有了块级作用域,就必须只有在此块级作用域才能访问此变量。

3、var声明的变量有变量提升特性,let声明则没有这个特性。变量提升:请点击:javascript中的变量提升的简单说明。

4、var可以允许重复声明相同的变量,后者会覆盖前者,let则不能重复声明相同的变量。


  • 张颖

    19:00-20:00 19:00-20:00 05月13日 19:00-20:00

    让一部分人先用好AI:为什么需要结构化提示词?

    AI启航

  • 赵国强

    19:00-20:30 19:00-20:30 05月13日 19:00-20:30

    智能方案合规审查,文件智能归档和速查

    AI+建工

  • 胡明

    20:00-21:30 20:00-21:30 05月13日 20:00-21:30

    AI浪潮下的HR生存指南 现在不学AI,未来何在?

    AI+人力

环球网校移动课堂APP 直播、听课。职达未来!

安卓版

下载

iPhone版

下载
环球网校快问 · 最新文章 · 最新问题
Copy 2018 https://wenda.hqwx.com/ All Rright Reserved. 京ICP备16038139号-3 / Smrz 京ICP备16038139号-3/ 举报电话:400-678-3456 /