js对象操作常用方法

一、创建对象

1.字面量创建

javascript 复制代码
//字面量创建
let obj = {a:1}

2.构造函数创建

javascript 复制代码
//构造函数创建
function Person(name,age){
    this.name = name;
    this.age = age;
}
let person = new Person('Bob',12);

二、访问对象属性

1.点符号

javascript 复制代码
let obj = {a:1}
obj.a

2.方括号

javascript 复制代码
let obj = {a:1}

obj['a']    //1

三、添加属性

javascript 复制代码
obj.c = 3;
obj['d'] = 4;

四、删除属性

javascript 复制代码
delete obj.a

五、判断属性是否存在

1.in运算符

javascript 复制代码
let obj = {a:1,b:2}

'a' in obj    //true

2.hasOwnProperty方法

javascript 复制代码
obj.hasOwnProperty('a'); // true

六、遍历对象属性

1.for...in...循环

javascript 复制代码
for (let prop in obj) {
    if (obj.hasOwnProperty(prop)) {
        console.log(`Key: ${prop}, Value: ${obj[prop]}`);
    }
}

2.Object.keys,Object.values,Object.entries

javascript 复制代码
Object.keys(obj).forEach(key => console.log(key));
Object.values(obj).forEach(value => console.log(value));
Object.entries(obj).forEach(([key, value]) => console.log(`${key}: ${value}`));

七、深拷贝与浅拷贝

1.浅拷贝

javascript 复制代码
let obj = {a:1}
let shallowCopy = Object.assign({},obj)

2.深拷贝

javascript 复制代码
let obj = {a:1}
let deepCopy = JSON.parse(JSON.stringify(obj))

八、合并对象

Object.assign

javascript 复制代码
let obj2 = { e: 5 };
let merged = Object.assign({}, obj, obj2);

九、其他方法

1.Object.is() 比较两个值是否严格相等

javascript 复制代码
Object.is(obj, obj); // true

2.Object.defineProperty() 定义或修改属性,并返回该对象

javascript 复制代码
let obj = {}
Object.defineProperty(obj, 'f', { value: 6, writable: true, enumerable: true, configurable: true });
console.log(obj)    //{f:6}
相关推荐
好开心啊没烦恼1 小时前
Python 数据分析:计算,分组统计1,df.groupby()。听故事学知识点怎么这么容易?
开发语言·python·数据挖掘·数据分析·pandas
lljss20202 小时前
Python11中创建虚拟环境、安装 TensorFlow
开发语言·python·tensorflow
Python×CATIA工业智造5 小时前
Frida RPC高级应用:动态模拟执行Android so文件实战指南
开发语言·python·pycharm
我叫小白菜6 小时前
【Java_EE】单例模式、阻塞队列、线程池、定时器
java·开发语言
狐凄6 小时前
Python实例题:基于 Python 的简单聊天机器人
开发语言·python
weixin_446122467 小时前
JAVA内存区域划分
java·开发语言·redis
小小小小宇7 小时前
虚拟列表兼容老DOM操作
前端
悦悦子a啊7 小时前
Python之--基本知识
开发语言·前端·python
QuantumStack8 小时前
【C++ 真题】P1104 生日
开发语言·c++·算法
安全系统学习8 小时前
系统安全之大模型案例分析
前端·安全·web安全·网络安全·xss