当前位置: 首页 > article >正文

js对象操作常用方法

一、创建对象

1.字面量创建

//字面量创建
let obj = {a:1}

2.构造函数创建

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

 

二、访问对象属性

1.点符号

let obj = {a:1}
obj.a

2.方括号

let obj = {a:1}

obj['a']    //1

三、添加属性

obj.c = 3;
obj['d'] = 4;

四、删除属性

delete obj.a

五、判断属性是否存在

1.in运算符

let obj = {a:1,b:2}

'a' in obj    //true

2.hasOwnProperty方法

obj.hasOwnProperty('a'); // true

六、遍历对象属性

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

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

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

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.浅拷贝

let obj = {a:1}
let shallowCopy = Object.assign({},obj)

2.深拷贝

let obj = {a:1}
let deepCopy = JSON.parse(JSON.stringify(obj))

八、合并对象

Object.assign

let obj2 = { e: 5 };
let merged = Object.assign({}, obj, obj2);

九、其他方法

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

Object.is(obj, obj); // true

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

let obj = {}
Object.defineProperty(obj, 'f', { value: 6, writable: true, enumerable: true, configurable: true });
console.log(obj)    //{f:6}

 


http://www.kler.cn/news/290050.html

相关文章:

  • 相机常见名词详解
  • Streamsets运行在国产化银河麒麟服务器
  • 报错:java:程序包org.springframework.boot不存在
  • 操作系统面试真题总结(五)
  • Unity(2022.3.41LTS) - UI详细介绍-画布
  • ChatGPT辅助论文写作的七大场景
  • zdppy+vue3+onlyoffice文档管理系统实战 20240903 上课笔记 登录功能完成
  • 数字化转型工具有哪些 无锡振宁科技
  • Vue项目安装依赖(npm install)报错的解决
  • 2024大模型学习:机器学习在安全领域的应用|从大数据中识别潜在安全威胁
  • 设计模式之解释器模式
  • LeetCode51 N 皇后
  • github上传代码
  • 河南省第三届职业技能大赛 网络安全(世赛选拔)项目样题
  • 【C++模板初阶】
  • 新换了电脑,电脑里常用的6款软件,下载回来继续用
  • Driver.js——实现页面引导
  • OpenFeign深入学习笔记
  • MySQL之DQL简单查询
  • 光纤接口简介
  • 三根K线形态介绍
  • OceanBase V4.2解析:如何用迭代器 Generator快速生成任意数据
  • 【复旦微FM33 MCU 外设开发指南】外设篇3——SPI
  • day02 1.c++对c的扩充
  • 学习关系型数据库:在MAC下编译安装firebird
  • 【iOS】——分类拓展关联对象
  • iOS面试:BAD_ACCESS在什么情况下出现?
  • SQL 语言简明入门:从历史到实践
  • BaseCTF之web(week2)
  • springboot使用swagger生成接口文档