ECMASCRIPT 5新特性

Object.create(prototype, descriptors)
以指定的原型创建对象,并且可以(可选)的设置对象的属性
Object.defineProperty(object, propertyname, descriptor)
对指定的对象的一个属性设置丰富的值控制
Object.defineProperties(object, descriptors)
对指定的对象的一组属性提供丰富的值控制
APIObject.getOwnPropertyDescriptor(object, propertyname)
返回属性的定义
Object.getOwnPropertyNames(object)
返回所有属性的名称,哪怕说是不能枚举的属性
Object.preventExtensions(object)
防止新的属性添加到对象
Object.isExtensible(object)
是否可添加属性到对象

Object.seal(object)
不能添加和删除属性
Object.isSealed(object)
alert(Object.isSealed(PokerA)); //true
Object.seal(PokerA);
alert(Object.isSealed(PokerA)); //false
如果要再严一点,完全封死对象,可以
Object.freeze(object)
防止现有属性和属性值的修改,并防止新特性的添加。
Object.isFrozen(object)
最后如果想要得到对象原型,可以用
Object.getPrototypeOf(object)
关于object的就差不多上面这些了。然后看下ECMAScript5再其他对象上的扩展的一些静态成员
Array.isArray
啥意思不必说了
Array.IndexOf
Array.lastIndexOf
一看就是好东西呀,不解释了
alert([“Hello”, “javaScript”, “ECMAScript”, “HTML5”].indexOf(“javaScript”));//1
alert([“Hello”, “javaScript”, “ECMAScript”, “HTML5”].lastIndexOf(“javaScript”));//1
Array.every
对数组的每个元素进行一个callback的条件检查,查看是否存在有不符合条件的元素。类似linq的all
Array.some
是判断数组有没有符合条件的元素,类似linq的any
Array.forEach

Array.map

Array.filter
如果是要过滤数组的话,可以用

Array.reduce
如果要做叠加器处理可以用

Date().toJSON()
含义一眼看出,内置就是爽

字符串给了一个trim,啥都没有好说了,你来晚了
alert(“[” + ” Hello “.trim() + “]”); //[Hello]

https://msdn.microsoft.com/zh-cn/library/dn656907.aspx
https://msdn.microsoft.com/zh-cn/library/br212465(v=vs.94).aspx
http://lzw.me/pages/ecmascript/#0

发布了51 篇原创文章 · 获赞 23 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/liuqi332922337/article/details/51441872