JS Object.preventExtensions(),Object.seal()与Object.freeze()用(2)

var obj = { name: "jb51", url: "https://www.jb51.net" }; Object.freeze(obj); obj.sex = "male"; obj.name = "zuojj"; //Outputs: {name: "jb51", url: "https://www.jb51.net"} console.log(obj);

4.2 严格模式下使用会报错 4.3 delete不能删除现有属性

var obj = { name: "jb51", url: "https://www.jb51.net" }; Object.freeze(obj); delete obj.name; //Outputs: {name: "jb51", url: "https://www.jb51.net"} console.log(obj);

4.4 判断对象是否被冻结

var obj = { name: "jb51", url: "https://www.jb51.net" }; Object.freeze(obj); //Outputs: true console.log(Object.isFrozen(obj));

五、兼容性

Object.preventExtensions(),Object.isExtensible(),
Object.seal(),Object.isSealed(),
Object.freeze(),Object.isFrozen()方法是ES5规范的一部分,IE8及以下低版本浏览器不支持。Oprea不支持。

感兴趣的朋友还可以使用在线HTML/CSS/JavaScript代码运行工具测试运行上述js代码。

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/a8a97d1f511e496507acfb989e8b473f.html