JS对象基本用法

107 阅读1分钟

声明对象的两种语法

 let obj1 = { 'a' : 1 } // 方式一
 let obj2 = new Object({ 'a' : 1 }) // 方式二

方式一是常用写法。

对象的key值是字符串,不是标志符,可以包含任意字符(就算省略引号,也是字符串,且省略引号时需要注意标志符格式)

如何删除对象的属性

delete obj.xxx //
delete obj.['xxx']//

obj.xxx = undefined 时,该属性的value被删除,key保留

如何查看对象的属性

Object.keys(obj) //查看所有键
Object.values(obj) //查看所有值
console.dir(obj) //查看所有公有属性+私有属性
'key' in obj //查看对象是否有该属性
obj.hasOwnProperty('key') //查看对象是否私有该属性
obj['key'] //查看对象属性
obj.key //同上

如何增加或者修改对象的属性

  • 直接赋值
  • 批量赋值
Object.assign(obj,{a:1,b:2,c:3}) //将a:1,b:2,c:3属性赋值给obj
  • 替换原型
let obj = Object.create(common) //创建一个obj对象,将他的原型替换为commen对象

一般情况下,不应该编写有关__proto__的相关代码