2015-12-18 25 views

回答

9

這背後的概念是......?

Property attributes。其configurable屬性設置爲false的每個屬性都不能爲delete d(它在靜態模式下失敗並以嚴格模式引發)。

如何判斷一個屬性是否可刪除?

可以使用Object.getOwnPropertyDescriptor() function訪問的屬性的對象:

var isDeletable = Object.getOwnPropertyDescriptor(obj, "propName").configurable; 

注意,這隻會爲obj自己的屬性,不繼承的人工作;對於那些你將不得不調用相應原型的函數。

+0

這是既快又接近完美!謝謝 – xameeramir

+1

@student:只接近?!請告訴我我可以改進什麼,或者建議編輯:-) – Bergi

+1

因爲我們生活在一個[非理想](http://sd.keepcalm-o-matic.co.uk/i/nobody-is-perfect -im-nobody - 2.png)world;) – xameeramir