答:
不可擴充套件物件
object.preventextensions(),
這樣就不能向物件中新新增屬性和方法了
。不可擴充套件量一級保護措施。
判斷:object.i***tensible()方法
使用這個方法可以確定物件是否為可篡改,如果可篡改,則返回true,相反返回false。
密封的物件
object.seal()
物件的第二個保護級別就是密封物件,密封物件不可擴充套件,且其物件的屬性特性
[[configurable]]
被設定為
false
,意味著物件的屬性和方法不能通過
delete
操作符刪除。
判斷:object.issealed()方法
該方法用於確定物件是否是密封物件,如果是密封物件返回true,相反返回false。
凍結物件
object.freeze()
保護物件的最高端防篡改就是凍結物件。凍結的物件,即是不可擴充套件的,也是密封的,而且其屬性的特性
[[writable]]
被設定為
false
,也就是說屬性值也不能修改。
判斷:object.isfrozen()方法
該方法用於確定物件是否是凍結物件。如果是返回true,相反返回false。
js 防篡改物件
簡單介紹一下js的防篡改物件 1 不可擴充套件物件 不能新增,可以修改和刪除 預設情況下,所有物件都是可擴充套件的。即任何時候我們都可以為物件新增屬性和方法。但使用object.preventextensions 方法可以改變這一預設行為,即不能再為物件新增新的屬性和方法,但是仍然可以修改和刪除已有...
JavaScript防篡改物件
任何人物件都可以被同一環境中執行的 修改。開發人員很可能會意外地修改別人的 甚至用不相容的功能重寫原生的 ecmascript解決了這個問題,可以讓開發人員防篡改物件。注意 一旦把物件定義為防篡改,就無法撤銷。1.不可擴充套件物件 在預設情況下,所有的物件都是可以擴充套件的。也就是說,任何時候都可以...
JS防篡改物件
在預設情況下,所有物件都是可以擴充套件的,也就是說,無論什麼時候都可以向物件中新增屬性和方法。例如以下,先定義乙個物件,再向其新增乙個新屬性 var obj obj.age 20 console.log obj.age 20即使先定義好乙個物件,後面也可以向其新新增屬性和方法。1.1 object....