标签:style blog color io java ar strong div cti
1、对象概述
1、对象常见的用法:
create 、set 、Query 、delete 、test、enumerate
2、对象的属性特性:
可写、可枚举、可配置
3、每个对象的对象特性:
原型、对象的类、对象的可扩展性
4、对象和属性分类:
内置对象、宿主对象、自定义对象、自由属性、继承属性
2、创建对象
1、对象直接量
2、通过new创建对象
3、原型
4、Object.create()
第一个参数:这个对象的原型
第二个参数:可选、对对象的属性进行进一步描述
var o1 = Object.create({x:1, y:2}); // o1 inherits properties x and y. var o2 = Object.create(null); // o2 inherits no props or methods. var o3 = Object.create(Object.prototype); // o3 is like {} or new Object().
通用的inherit()函数,兼容版本(但是并不能完全替代create如不能接受第二参数)
function inherit(p) { if (p == null) throw TypeError(); // p must be a non-null object if (Object.create) // If Object.create() is defined... return Object.create(p); // then just use it. var t = typeof p; // Otherwise do some more type checking if (t !== "object" && t !== "function") throw TypeError(); function f() {}; // Define a dummy constructor function. f.prototype = p; // Set its prototype property to p. return new f(); // Use f() to create an "heir" of p. }
3、属性的查询和设置
1、作为关联数组的对象
javascript对象都是关联数组,点访问和括号访问的差异
2、继承
3、属性访问错误
var len = book && book.subtitle && book.subtitle.length;
这段代码的作用:避免属性访问错误的方法
下面的情形给对象o设置属性p会失败:
1、o中的属性p是只读的
2、o的属性p时继承的,且是只读的:不能通过自有属性覆盖只读属性的继承属性
3、
标签:style blog color io java ar strong div cti
原文地址:http://www.cnblogs.com/liguwe/p/3959595.html