07
2019
03

ES6 属性变量

对var声明的变量来说,如果处于全局作用域,它们会自动成为window对象的属性。这意味着用var很可能无意中覆盖一个已经存在的全局变量

//function RegExp() { [native code] }

console.log(RegExp);

var RegExp = "hello";

console.log(RegExp);//'hello'

console.log(window.RegExp);//'hello'

如果使用let或const声明的变量,不会成为window对象的属性

let RegExp = "hello";

console.log(RegExp);//'hello'

console.log(window.RegExp);//function RegExp() { [native code] }

因此,如果希望在window对象下定义变量,要使用var声明。如果不希望,则使得let或const

原文链接:https://www.qiquanji.com/post/7901.html

本站声明:网站内容来源于网络,如有侵权,请联系我们,我们将及时处理。

微信扫码关注

更新实时通知

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。