JS 对象基本用法

199 阅读1分钟

JS对象是七种基本数据类型(复习一下:四基number, string, bool, symbol,两空null, undefined,一对象object)中最特殊的一种,今天就复习一下JS对象的基本用法。

如何声明一个对象

两种方法

  1. let obj = {'name': 'xiaoming', 'age': 24} //简写

  2. let obj2 = new Object({'name': 'xiaoming', 'age': 24}) //标准写法

对象属性的增删改查CRUD

硬删除 & 软删除

delete obj.xxxdelete obj['xxx'] //硬删除

obj.xxx = undefined //软删除

判断属性是否在对象中

表达式 (xxx in obj)

判断属性是否为对象的自有属性(不是隐藏属性)

obj.hasOwnProperty('xxx')

这两者的区别

前者可用于隐藏属性,后者只能判断自有属性

查询对象自有属性

Object.keys(obj)

查询对象的所有属性

console.dir(obj)

改和增

已有属性则改,没有的属性则增

改自身

obj.name = 'ann' //单个修改

Object.assign(obj, {name: 'ann'......}) //批量修改

改共有属性

obj.__proto__.toString = 'xxx' //第一种

Object.prototype.toString = 'xxx' //第二种

改原型

obj.__proto__ = other //other是一个对象

var obj3 = Object.create(obj2, {name: {value: 'tutu'}, kind: {value: 'human'}}) //以obj2为原型创建obj3

改原型