中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用JavaScript怎么創建防篡改對象

發布時間:2021-05-20 16:44:53 來源:億速云 閱讀:127 作者:Leah 欄目:web開發

使用JavaScript怎么創建防篡改對象?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

1 不可擴展對象

默認情況下,所有的對象都是可擴展的,即可以隨意地添加屬性和方法。現在,使用 Object.preventExtensions(person) 方法后,對象就不可以擴展咯:

<script type="text/javascript">
  var person = {name: "deniro"};
  //  person.age = 29;
  //  console.log(person.age);
  console.log(Object.isExtensible(person));//true
  Object.preventExtensions(person);
  person.age = 15;
  console.log(person.age);//undefined
  console.log(Object.isExtensible(person));//false
</script>

運行結果:

使用JavaScript怎么創建防篡改對象

在非嚴格模式下,為對象添加新成員會靜默失敗;而在嚴格模式下,會拋出錯誤。

雖然對象不能添加新成員,但仍然可以修改和刪除已有的成員。而 Object.isExtensible() 可以確定對象是否可擴展。

2 密封的對象

密封的對象不可以擴展,而且已有的成員的[[Configurable]]的特性也被設置為 false,這意味著不能刪除這個對象的屬性和方法咯,但屬性的值可以修改:

<script type="text/javascript">
  var person = {name: "deniro"};
  console.log(Object.isExtensible(person));//true
  console.log(Object.isSealed(person));//false
  Object.seal(person);//密封對象
  console.log(Object.isExtensible(person));//false
  console.log(Object.isSealed(person));//true
  person.age = 29;
  console.log(person.age);//undefined
  delete person.name;
  console.log(person.name);//deniro
</script>

運行結果:

使用JavaScript怎么創建防篡改對象

跟不可擴展對象相似,在非嚴格模式下,刪除對象的已有成員會靜默失敗;而在嚴格模式下,會拋出錯誤。

3 凍結的對象

對象的最嚴格的防篡改級別是凍結!凍結的對象既不能擴展,又是密封的,而且對象的數據屬性[[Writable]]被設置為 false,即屬性值無法被修改:

<script type="text/javascript">
  var person = {name: "deniro"};
  console.log(Object.isExtensible(person));//true
  console.log(Object.isSealed(person));//false
  console.log(Object.isFrozen(person));//false
  Object.freeze(person);
  console.log(Object.isExtensible(person));//false
  console.log(Object.isSealed(person));//true
  console.log(Object.isFrozen(person));//trueo
  person.age = 29;
  console.log(person.age);//undefined
  delete person.name;
  console.log(person.name);//deniro
  person.name = "lily";
  console.log(person.name);//deniro
</script>

運行結果:

使用JavaScript怎么創建防篡改對象

javascript是一種什么語言

javascript是一種動態類型、弱類型的語言,基于對象和事件驅動并具有相對安全性并廣泛用于客戶端網頁開發的腳本語言,同時也是一種廣泛用于客戶端Web開發的腳本語言。它主要用來給HTML網頁添加動態功能,現在JavaScript也可被用于網絡服務器,如Node.js。

關于使用JavaScript怎么創建防篡改對象問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

屯昌县| 馆陶县| 宽甸| 凌海市| 沅陵县| 华宁县| 宝坻区| 苗栗县| 旅游| 宕昌县| 田林县| 连城县| 资源县| 正镶白旗| 儋州市| 高雄县| 松江区| 筠连县| 泾阳县| 深水埗区| 夏津县| 武城县| 北碚区| 三穗县| 雅江县| 宜宾县| 聂拉木县| 佛坪县| 琼海市| 罗田县| 准格尔旗| 赣榆县| 彰化县| 尼木县| 双桥区| 铜鼓县| 河西区| 蒙山县| 横山县| 东至县| 万宁市|