Skip to content

Commit 07c9a59

Browse files
committed
修改
1 parent 42d7a68 commit 07c9a59

File tree

1 file changed

+40
-1
lines changed

1 file changed

+40
-1
lines changed

6.Object/README.md

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
###
88

99
###一、创建对象
10-
####1.对象直接量
10+
####1.对象直接量(简单,直接)
1111

1212
> 创建对象最简单的方式就是在JavaScript代码中使用对象直接量。
1313
对象直接量是由若干名/值对组成的映射表,名/值对中间用冒号分隔,名/值用逗号分隔。
@@ -30,6 +30,45 @@ var book = {
3030
}
3131
}
3232
```
33+
34+
####2.通过new关键字创建对象
35+
> new运算符创建并初始化一个新对象。关键字new后跟随一个函数调用。
36+
这个函数称为构造函数(constructor),构造函数用以初始化一个新创建的对象。
37+
Javascrpit语言核心的原始类型包含内置构造函数:
38+
39+
```javascript
40+
/**
41+
* 通过new创建对象
42+
*/
43+
var o = new Object(); // 创建一个空对象,和{}一样
44+
var a = new Array(); // 创建一个空数组,和[]一样
45+
var d = new Date(); // 创建一个表示当前时间的Date对象
46+
var r = new RegExp("js"); // 创建一个可以进行模式对象
47+
````
48+
49+
####3. 原型
50+
> 每个Javascritpt对象(null除外)都和另个一个对象相关联,"另一个"对象就是我们熟知的原型,每个对象都从原型继承属性。
51+
52+
> 所有通过对象直接量创建的对象都具有同一个原型对象,并可以通过JavaScript代码,Object.prototeyp获得原型对象的引用。通过关键字new和构造函数调用创建的对象的原型就是构造函数prototype属性的值。因此,同使用{}创建对象一样,通过new Object()创建对象也继承自Obejct.prototype.同样,通过new Array()创建的原型就是Array.prototype。通过new Date()创建的对象的原型就是Date.prototype.
53+
54+
> 没有原型的对象为数不对。Object.prototype就是其中之一。它不继承任何属性。其他原型对象都是一个普通对象,普通对象都具有原型。所有的内置构造函数(以及大部分自定义的构造函数)都具有一个继承自Object.prototype的原型。 这个一系列的原型对象就是所谓的“原型链”(prototype chain)
55+
56+
####3. ####3. 原型
57+
> ECMAScript 5定义了一个名为Object.create的方法,它创建一个新对象,其中第一参数为对象的原型。 第一个参数可选。
58+
59+
> Object.create()是一个静态函数,二不是提供某个对象调用的方法,使用他们的方法很简单,只需要传入所需要的原型对象那个即可。
60+
61+
```javascript
62+
/**
63+
* Object.create() 创建对象
64+
*/
65+
var o1 = Object.create( {x:1,y:2} ); // o1继承了属性x和y
66+
67+
```
68+
69+
> 可以通过传入参数null来创建一个没有原型的新对象,但是同这个方式不会继承任何东西, 甚至还不包含基础方法,比如toString(),他不能和 + 一起工作。
70+
71+
3372
###二、属性的查询和设置
3473
###三、属性的删除
3574
###四、监测属性

0 commit comments

Comments
 (0)