function defineProperties(obj, properties) { function convertToDescriptor(desc) { function hasProperty(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } function isCallable(v) { // 如果除函数以外,还有其他…
语言元素 语言元素 突发.IE6 标准.IE7 标准 IE8 标准 IE 9 标准 IE 10 标准 边缘 Windows 应用商店应用程序 __proto__ 属性 (Object) (JavaScript) N N N N Y V8:否 v8.1:是 $1...$9 属性 (RegExp) (JavaScript) Y Y Y Y Y Y 有关属性 Y Y Y Y Y Y abs 函数 Y Y Y Y Y Y acos 函数 Y Y Y Y Y Y ActiveXObject 对象 Y Y…
枚举对象的属性:通常用for(...in...)来循环遍历,由于 for in 总是要遍历整个原型链,因此如果一个对象的继承层次太深的话会影响性能 for(var i in foo){ if(foo.hasOwnProperty(i)){ console.log(i); } } 推荐总是在for in使用 hasOwnProperty,因为类库被包含在页面中时,不使用 hasOwnProperty 过滤的 for in循环难免会出问题. p.hasOwnProperty('x') //检查对象p…
在面向对象语言中都有类的概念,通过类来创建具有属性和方法的对象.而ECMAScript中没有类的概念,ECMAScript中定义了对象:无需属性的集合,其属性值可以包含基本值.对象.或者函数. 在Javascript中每个对象都是基础引用类型来创建的,可以是原生类型也可以是自定义的类型. 自定义对象最简单的方法就是通过创建Object类型的实例,然后为这个实例添加属性和方法. var Person = new Object(); Person.name = "yangxunwu"; P…