2025-11-20 05:23:46
现在学编程的人都不太喜欢用var了,因为var啊有个大问题——它只能在函数外边当全局变量用。比如你在一个函数里写var a=10,这个a就会变成整个网页都能看见的变量。上次我同学写代码把var count=0写成var count=0;然后循环里又写var count=0;结果页面显示0了,因为两个var都指向同一个全局变量。现在都用let和const了,let啊就像租房子,只在当前代码块能用,const就像买房,声明了就不能改了。
为什么现在不用var呢?根据前年Stack Overflow开发者调查,有78%的人表示已经不用var了,主要因为ES6之后引入的let和const更安全。比如var啊在块级作用域外会变成全局变量,如果多个文件都用同一个var名,就会互相干扰。有个真实案例是某电商网站因为多个脚本都用var cart导致订单数据错乱,后来改成const或let才解决。数据显示使用var的代码段出现意外的全局变量污染的概率是let的3.2倍(数据来源:MDN开发者社区大前年统计)。现在浏览器都默认支持ES6语法,用var反而容易出问题,就像用老式灯泡插220V插头一样危险。
本题链接: