文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

JavaScript 对象的终极指南:掌握对象的方方面面

2024-03-13 05:16

关注

JavaScript 对象是存储键值对的集合。它们使用大括号 {} 创建,键和值用冒号分隔。属性可以通过点语法或方括号语法访问和修改。

const person = {
  name: "John Doe",
  age: 30,
};

// 点语法
console.log(person.name); // "John Doe"

// 方括号语法
console.log(person["age"]); // 30

对象方法

方法是附加到对象的函数。它们可以通过点语法或方括号语法调用。

const person = {
  name: "John Doe",
  age: 30,
  greet: function () {
    console.log(`Hello, my name is ${this.name}`);
  },
};

// 点语法
person.greet(); // "Hello, my name is John Doe"

// 方括号语法
person["greet"](); // "Hello, my name is John Doe"

原型和继承

每个 JavaScript 对象都有一个原型,它包含对象的公共属性和方法。对象的原型可以通过 Object.getPrototypeOf() 访问。

对象可以通过 Object.create() 根据其他对象创建,从而继承后者的原型。

const parentObject = {
  property: "parent-value",
};

const childObject = Object.create(parentObject);
childObject.property; // "parent-value"

对象比较

JavaScript 提供了两种比较对象的方法:

const obj1 = { a: 1 };
const obj2 = { a: 1 };

console.log(obj1 === obj2); // false (引用不同)
console.log(_.isEqual(obj1, obj2)); // true (深度相等)

对象遍历

可以使用 for...inObject.keys() 遍历对象的键和值:

const person = {
  name: "John Doe",
  age: 30,
};

// 遍历键
for (const key in person) {
  console.log(key); // "name" "age"
}

// 遍历值
Object.keys(person).forEach((key) => {
  console.log(person[key]); // "John Doe" "30"
});

对象冻结和密封

const person = {
  name: "John Doe",
  age: 30,
};

Object.freeze(person);
person.name = "Jane Doe"; // 不会更改(冻结)

特殊对象

JavaScript 提供了几个特殊对象,包括:

最佳实践

使用对象时,建议遵循以下最佳实践:

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     801人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     348人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     311人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     432人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     220人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯