收获
JavaScript对象属性标签
如果不写属性标签,那么默认都为false
- 通过 Object.defineProperty() 方法来设置属性标签
var test = {};
Object.defineProperty(test,'name',{
configurable:false, //不可以被删除 delete test.name
enumerable:true, //可以被枚举到 for(var a; in test){console.log(a)} || Object.keys(aa)
writable:true //可以被修改 test.name = 1
value:'Object'
});
- 通过 Object.defineProperties() 方法设置属性标签
var test = {};
Object.defineProperties(test,{
title:{value,configruable,enumerable,writable},
name:{},
age:{}
})
- configurable 是否可配置、是否可被删除,如果为false,将不能再次修改属性标签
- enumerable 是否枚举
- writable 是否可读
- 判断属性有哪些属性标签 Object.getOwnPropertyDescriptor()
Object.getOwnPropertyDescriptor(对象,'属性');
- getter setter
JavaScript对象标签
- proto 对象的原型
- class 查看对象是哪一个类
Object.prototype.toString.call(对象)
- extebsuble 表示对象是否可扩展,是否可以添加新的属性
Object.isExtensible(对象) //返回 boolean 值,判断对象是否可添加属性,默认是true
Object.preventExtensions(对象) //禁止对象添加属性
Object.seal(对象) //设置对象所有属性的 configurable 为 false
Object.isSealed(对象) //判断对象是否被 Object.seal
Object.freeze(对象) //设置对象所有属性的 writable 为 false
Object.isFrozen(对象) //判断对象是否被 Object.freeze
- toString() 方法
- valueOf() 方法
JavaScript序列化
- JSON.stringify(对象) 序列化对象
- JSON.parse(对象) 反序列化对象
感受
今天收获的内容很少,主要还是贪玩去了,睡了一整天。 不过虽然少,但是总比没有好。
打算
- 继续看慕课网的教程
- 学习数组