JS中的内置对象
Math,Date内置对象
Array数组内置对象
String字符串内置对象
自定义对象
1.创建简单自定义对象
var stu = {
age: 18,
name: 'JAKE',
sex: '男',
sleep: function () { },
eat: function () { }
}
console.log(stu);
2.调用对象
2.1外部调用
var stu = {
age: 18,
name: 'JAKE',
sex: '男',
sleep: function () { },
eat: function () { }
}
console.log(stu.name);
console.log(stu.sleep);
2.2内部调用
使用this指针调用(指向stu对象)
var stu = {
age: 18,
name: 'JAKE',
sex: '男',
sleep: function () {
return this.age
},
eat: function () { }
}
console.log(stu.sleep());
3.自定义对象中的属性
configurable | enumerable | value | writable | get | set | |
---|---|---|---|---|---|---|
对象的属性是否可以被删除 | 对象的属性是否可以在(for…in循环和Object.keys())被枚举 | 该属性对应的值 | 对象的属性是否可以被重新赋值(true/false) | 函数的返回值会被用作属性的值 | 属性值被修改时,会调用此函数 | |
数据描述符 | 可以 | 可以 | 可以 | 可以 | 不可以 | 不可以 |
存取描述符 | 可以 | 可以 | 不可以 | 不可以 | 可以 | 可以 |
4.自定义对象中的方法
修改创建属性
Object.defineProperty( obj,prop,descriptor)
obj:要定义属性的对象。
prop:要定义或修改的属性的名称或 Symbol
descriptor:要定义或修改的属性描述符
var o = {}
Object.defineProperty(o, "a", {
value: 37,
writable: true,
enumerable: true,
configurable: true
});
console.log(o);