ECMAScript5新特性之isFrozen、freeze
对象被冻结后:
1 不能添加属性。
2 不能删除属性。
3 不能修改属性。(赋值)
4 不能修改属性描述符。(会抛异常)

var fruit = {
name : '苹果',
desc : '红富士'
};
//
console.log('isFrozen',Object.isFrozen(fruit)); // false
Object.freeze(fruit);
console.log('isFrozen',Object.isFrozen(fruit)); // true
//
fruit.address = '烟台';
console.log('添加address属性',fruit);
//
fruit.desc = '金帅';
console.log('修改属性',fruit);
//
delete(fruit.desc);
console.log('删除属性',fruit);
//
Object.defineProperty(fruit,'desc',{ // 抛异常
enumerable : false
});
console.log('修改属性描述符为不可枚举',Object.keys(fruit));
ECMAScript5新特性之isFrozen、freeze的更多相关文章
- ECMAScript5新特性总结
虽然ECMAScript5早就成为标准推出来了,但之前因为一直用的是ECMAScript3,并且工作中总是要求兼容IE的低版本,所以用的比较少.如今市场上大多数浏览器都能兼容ECMAScript5(I ...
- ECMASCRIPT5新特性(转载)
Function 1: Object.create 这是一个很重要的改动,现在我们终于可以得到一个原型链干净的对象了.以前要创建一个类 function Cat(name) { this.name ...
- ECMAScript5新特性之获取对象特有的属性
'use strict'; // 父类 function Fruit(){ } Fruit.prototype.name = '水果'; // 子类 function Apple(desc){ thi ...
- ECMAScript5新特性之isSealed、seal
封闭对象后: 1 不能增加属性. 2 不能删除属性. 3 可以修改属性.(赋值) 4 不能修改属性描述符.(抛异常) var fruit = { name : '苹果', desc : '红富士' } ...
- ECMAScript5新特性之Object.isExtensible、Object.preventExtensions
阻止对象扩展后: 1 不能添加属性. 2 可以修改属性的值. 3 可以删除属性. 4 可以修改属性描述符. var fruit = { name : '苹果', desc : '红富士' }; // ...
- Atitit js版本es5 es6新特性
Atitit js版本es5 es6新特性 Es5( es5 其实就是adobe action script的标准化)1 es6新特性1 Es5( es5 其实就是adobe action scrip ...
- ECMAScript和JavaScript的区别,ECMAScript发展更新历史,ECMAScript5和ECMAScript6的新特性及浏览器支持情况,ECMAScript 5/ECMAScript 2015正式发布
ECMAScript和JavaScript的区别 ECMA是European Computer Manufacturers Association的缩写,即欧洲计算机制造商协会.欧洲计算机制造商协会是 ...
- ECMAScript 6 | 新特性
新特性概览 参考文章: http://www.cnblogs.com/Wayou/p/es6_new_features.html ——————————————————————————————————— ...
- ECMAScript6 | 新特性(部分)
新特性概览 参考文章:http://www.cnblogs.com/Wayou/p/es6_new_features.html 这位前辈写的很好,建议深入学习 ———————————————————— ...
随机推荐
- shell 9test命令
shell中的test用于检查某个条件是否成立,它可以进行数值.字符和文件三个方面的测试. 数值测试 * -eq 等于为true * -ne 不等,为true * -gt 大于,为true * -ge ...
- 未来的趋势发展 802.11v网络协议解析
目前的无线网络中,一个基站通常与拥有最强信号的接入点联系在一起.但是,这个接入点也许过载了.在802.11v标准中,包括了一个指令,接入点能够使用这个指令要求一个基站报告它支持的无线电信道.传输的功率 ...
- pip 安装指定版本的python包
pip install -v package_name==2.3
- Java 集合 线程安全
Java中常用的集合框架中的实现类HashSet.TreeSet.ArrayList.ArrayDeque.LinkedList.HashMap.TreeMap都是线程不安全的,如果多个线程同时访问它 ...
- POI实现EXCEL单元格合并及边框样式
POI实现EXCEL单元格合并及边框样式 下面例子为创建产生一个excel,合并单元格,然后为合并后的单元格添加边框 package test; import java.io.FileOutp ...
- Python之部分基础知识点汇总
1.三元运算(又称三目运算) 三元运算(又称三目运算),简单条件语句的简写 if a<b: A else: B等价于:A if a<b else B 2.
- tornado-模板继承extend,函数和类的导入
大 import tornado.ioloop import tornado.web import tornado.httpserver # 非阻塞 import tornado.options # ...
- load data
LOAD DATA INFILE 'D:\GX\\mm.txt' REPLACE INTO TABLE mm FIELDS TERMINATED BY ' ' // 以空格为分隔符插入数据,前提是mm ...
- idea中创建多module的maven工程
以前自学Java web的时候,我们都是创建一个web工程,该工程下面再创建dao.service.controller等包.自从工作以后,我们会发现现在的web项目包含多个module,contro ...
- JS 报表制作
1:Echarts, 界面多样化. http://echarts.baidu.com/index.html 2: Jmgraph 工具 简单的画线工具 http://graph.jm47.com/ 3 ...