小编Mar*_*cus的帖子

const vs var 和 window.name 属性

刚刚在最近看到的一个问题中遇到了以下问题,我很好奇为什么var nameconst name提供不同的输出。运行下面的代码片段,看看我的意思。

如果有什么关系name作为一个window对象的属性,然后重新申报/定义 nameconst应导致一个错误,我觉得。但是,在下面的示例中,const允许将 重新声明name为数组,而var不允许。

var name = ['one', 'two', 'three', 'four', 'five'];
for (var i=0; i < name.length; i++){
    document.write(name[i] + '<br>');
}
Run Code Online (Sandbox Code Playgroud)

const name = ['one', 'two', 'three', 'four', 'five'];
for (var i=0; i < name.length; i++){
    document.write(name[i] + '<br>');
}
Run Code Online (Sandbox Code Playgroud)

那么,为什么const允许我劫持window.name属性并将其重新分配为数组?但var不允许重新分配(保持默认string …

javascript ecmascript-6

3
推荐指数
1
解决办法
2519
查看次数

标签 统计

ecmascript-6 ×1

javascript ×1