透過var宣告的變數delete不能刪除,但是它也是window的屬性啊?求解釋
var foo = 1; window.bar = 2; delete foo; delete bar; console.log(window.foo,window.bar)//1 undefined
光阴似箭催人老,日月如移越少年。
因為用var宣告的變量,其屬性是configurable = false的,所以不能刪除。
var
configurable = false
var ss = 0; console.log(Object.getOwnPropertyDescriptor(window, 'ss')); /* { configurable: false enumerable: true value: 0 writable: true } */
因為用
var
宣告的變量,其屬性是configurable = false
的,所以不能刪除。