JS 对象基本用法

113 阅读1分钟

一、声明对象的方法

  1.  let obj = {'name': 'Ken', 'age': 24};//     简单写法,大部分情况用这种声明方法。
    
  2.  let obj = new Object({'name': 'Ken', 'age': 24});
    

二、如何删除对象的属性

  • 通过delete obj.xxx 或 delete obj['xxx']两种方法即可删除xxx属性
  • 利用'xxx' in obj === false 可以查看对象中是否含有属性名
  • 注意: obj.xxx === undefined 不能判断'xxx'是否为obj的属性。 undefined是一个值

三、如何查看对象的属性

  • 查看自身所有属性:Object.keys(obj)
  • 查看自身+共有属性: console.dir(obj)
  • 查看对象的某一个属性: obj['key'] 或 obj.key

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

  • let obj = {name: 'frank'}//   name是字符串
    obj.name = 'frank';
    obj['name'] = 'frank';
    
  • 批量赋值: Object.assign(obj, {age: 24, gender: 'man'}); // 想改啥就在花括号里面修改
  • 无法通过自身修改或增加共有属性 let obj = {}, obj2 = {} // 共有 toString obj.toString = 'xxx' 只会在改 obj 自身属性 obj2.toString 还是在原型上

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

  • 'name' in obj 可以检查到自身属性和原型属性,两者都能检查到。
  • 而obj.hasOwnProperty('name') 只能检查到自身属性,原型属性无法检测。