搜索

首页  >  问答  >  正文

javascript - 通过var声明的变量delete不能删除,但是它也是window的属性啊?

通过var声明的变量delete不能删除,但是它也是window的属性啊?求解释

var foo = 1;
window.bar = 2;
delete foo;
delete bar;
console.log(window.foo,window.bar)//1 undefined
大家讲道理大家讲道理2761 天前753

全部回复(1)我来回复

  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-14 10:54:39

    因为用var声明的变量,其属性是configurable = false的,所以不能删除。

    var ss = 0;
    console.log(Object.getOwnPropertyDescriptor(window, 'ss'));
    
    /*
    {
        configurable: false
        enumerable: true
        value: 0
        writable: true
    }
    */

    回复
    0
  • 取消回复