JS对象基本用法

186 阅读1分钟

1.声明对象的两种方法

  1. 简单写法
let obj = {
    'name' : 'fang',
    'age' : 20
}
  1. 标准写法
let obj = new Object({
    'name' : 'fang',
    'age' : 20
})
  • 对象的属性名与属性值都是以键值对的形式,键名是字符串,不是标识符!

2.对象属性的增删改查

delete obj['属性名']

或者

delete obj.属性名

注:obj.属性名 = undefined并没有删除该属性,只是将属性的值变为undefined!!!该属性还在对象里面!

如何判断属性是否在对象中

'属性名' in obj使用该表达式可以判断'属性名'是否存在对象obj里,存在返回true。

如何判断属性是不是对象的自有属性(注:不是隐藏属性)

obj.hasOwnProperty('属性名')

  1. 增和改

直接赋值 obj.属性名 = 属性值

批量赋值 Object.assign(obj, {属性名 : 属性值 , 属性名 : 属性值 ,......})

如果对象里有该属性,便是修改,没有便是增加。

Object.keys(obj)查看对象自身所有属性

console.dir(obj)查看自身+公有属性

  1. '属性名' in objobj.hasOwnProperty('属性名') 的区别
  • '属性名' in obj可用于隐藏属性,obj.hasOwnProperty('属性名') 只能判断自有属性