对象(Object)结构
常用 API
shell
操作 方法 时间复杂度 说明
新增 obj.key = value O(1) 直接赋值
修改 obj.key = value O(1) 直接赋值
删除 delete obj.key O(1) 删除属性(不推荐,建议设为undefined)
判断属性 obj.hasOwnProperty('key') O(1) 判断是否为自身属性(排除原型链)
访问 obj.key 或 obj['key'] O(1) 访问属性值
遍历 for in 或 Object.keys O(n) 遍历自身属性(需过滤原型链属性)注意
键只能是字符串 / Symbol(如用数字会自动转为字符串)
遍历需用hasOwnProperty过滤原型链属性(避免遍历到Object.prototype上的方法)
不适合频繁增删且需遍历的场景(推荐用 Map)
