一.3种生成方法
1.大括号:
var o={
p:'hello'
}
2.用new 命令生成一个object对象的实例
var student = new Object();
3.使用object.create(object.prototype)生成一个
var obj =Object.create(Object.prototype);
二.键名
1.对象的所有键名都是字符串,所以加不加引号都可以,但如果键名不符合标识名的条件,则必须加上引号
2.属性可以动态创建,不必在对象声明时就指定
三.对象的引用
不同的变量名指向同一个对象,那么它们都是这个对象的引用,也就是说,指向同一个内存地址,修改其中一个变量,会影响到其他所有变量
var o1={};
undefined
var o2=o1;
undefined
o1.a=90;
90
o2.a
90
o2.b=30;
30
o1.b
30
四.查看所有的属性
查看一個對象本身的所有屬性,可以使用object.keys方法
var pp={1: "a", 2: "b", 3: "c", 4: "d", cc: "gg", y: 56}
Object.keys(pp);
返回結果:["1", "2", "3", "4", "cc", "y"]
五.属性遍历
- 它遍历的是对象所有可遍历(enumerable)的属性,会跳过不可遍历的属性
- 它不仅遍历对象自身的属性,还遍历继承的属性
- 如果只想遍历对象本身的属性,可以使用
hasOwnProperty
方法,在循环内部判断一下是不是自身的属性。
六.in运算符
in运算符用于检查对象是否包含某个属性(注意:检查的是键名,不是键值)
var pp={
dd:'ff'
}
'dd' in pp
结果:
true