JS对象基本用法

270 阅读1分钟

声明对象的语法

  1. 使用字面量
var obj = { 
'a' : 1,
'b' : 2       
}

var obj = new Object({
'a': 'ls',
'b': 2
})
  1. 使用构造函数
function Obj(a) {
 this.a = a
 }
 function getA(){
 console.log(this.a)
 }
 obj1 = new Obj(a)
 
 class Obj{
 constructor(a){
 this.a = a
 }
 getA(){
 console.log(this.a)
 }
 }

对象属性的增删改查

  1. 增加
obj.create();
obj.key = value
  1. 删除
delete
  1. 修改
obj.key = value ;
obj.assign();
  1. 查询
obj.keys()
obj.dir()
in
obj.hasOwnPrototype()

'name' in obj和obj.hasOwnPrototype('name')的区别

  • in判断一个对象属性或原型里面是否包含某个key,key为字符串
    var obj={
        key:123
    };
    'key' in obj;                                           //true
    'hasOwnProperty' in obj;                                //true
  • hasOwnPrototype判断一个对象属性里是否包含某个key,key为字符串,此方法不会去判断原型
   var obj={
       key:123
   };
   obj.hasOwnProperty('key');                             //true
   obj.hasOwnProperty('hasOwnProperty');                  //false