Tôi chỉ nghe nói về các phương thức JavaScript freeze
và seal
, có thể được sử dụng để làm cho bất kỳ Đối tượng nào không thay đổi.
Đây là một ví dụ ngắn về cách sử dụng nó:
var o1 = {}, o2 = {};
Object.freeze(o2);
o1["a"] = "worked";
o2["a"] = "worked";
alert(o1["a"]); //prints "worked"
alert(o2["a"]); //prints "undefined"
Sự khác biệt giữa freeze
và là seal
gì? Họ có thể tăng hiệu suất?
Object.preventExtensions
ngoài ra còn có Object.seal
và Object.freeze
. Object.preventExtensions
chỉ ngăn các mục mới được thêm vào một đối tượng. Bạn có thể xóa, định cấu hình và thay đổi giá trị của các thuộc tính trên các đối tượng đã tắt tính năng mở rộng của chúng Object.preventExtensions
.