JavaScript Object.freeze()
- หน้าก่อนหน้า entries()
- หน้าต่อไป fromEntries()
- กลับไปหน้าเดิม คู่มือองค์ประกอบ JavaScript
定义和用法
Object.freeze()
方法用于防止对对象进行任何更改。
在非严格模式下,Object.freeze()
方法会静默失败。
在严格模式下,Object.freeze()
方法会抛出 TypeError。
被冻结的对象是只读的。不允许修改、添加或删除属性。
可以使用 Object.isFrozen()
方法来检查对象是否被冻结。
วิธีที่เกี่ยวข้อง
Object.preventExtensions()
อนุญาติให้แก้ไข แต่ป้องกันการเพิ่มรูปแบบ
Object.seal()
อนุญาตให้แก้ไข แต่ป้องกันการเพิ่มและการลบคุณสมบัติ
Object.freeze()
ป้องกันการแก้ไข การเพิ่มและการลบคุณสมบัติ
Object.isExtensible()
ถ้าวัตถุสามารถขยายได้ ก็จะกลับมาเป็น true
Object.isSealed()
ถ้าวัตถุเป็นซีล ก็จะกลับมาเป็น true
Object.isFrozen()
ถ้าวัตถุถูกแขวง ก็จะกลับมาเป็น true
ตัวอย่าง
ตัวอย่าง 1
"use strict" // สร้างวัตถุ const person = { firstName: "Bill", lastName: "Gates", age: 50, eyeColor: "blue" }; // แขวงวัตถุ Object.freeze(person); // จะทำให้ปรากฏข้อผิดพลาด person.age = 51;
ตัวอย่าง 2
const fruits = ["Banana", "Orange", "Apple", "Mango"]; Object.freeze(fruits); // จะทำให้ปรากฏข้อผิดพลาด: fruits.push("Kiwi");
บทบาท
Object.freeze(object)
ตัวแปร
ตัวแปร | การอธิบาย |
---|---|
object | จำเป็น ต้องมีสิ่งที่ต้องการแขวง |
ค่าที่กลับมา
ประเภท | การอธิบาย |
---|---|
Object | สิ่งที่ถูกแขวง |
การสนับสนุนโดยบราวเซอร์
Object.freeze()
เป็นคุณสมบัติของ ECMAScript5 (ES5)
ตั้งแต่เดือนกรกฎาคม 2013 ต้นตามตารางเวลา ทุกบราวเซอร์ที่มีประสิทธิภาพทุกตัว ใช้งาน ES5 (JavaScript 2009) ทั้งหมด
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 23 | IE/Edge 11 | Firefox 21 | Safari 6 | Opera 15 |
กันยายน 2012 | กันยายน 2012 | เมษายน 2013 | กรกฎาคม 2012 | กรกฎาคม 2013 |
- หน้าก่อนหน้า entries()
- หน้าต่อไป fromEntries()
- กลับไปหน้าเดิม คู่มือองค์ประกอบ JavaScript