17370845950

javascript对象是什么_如何创建和访问对象的属性
JavaScript对象是存储键值对的引用类型,可用字面量、Object构造函数或class创建;属性通过点号或方括号访问;支持动态增删改查,是操作数据的核心基础。

JavaScript 对象是存储键值对(key-value)的集合,用来表示现实中的实体或抽象的数据结构,比如一个人、一个订单、一个配置项。它不是简单的数据类型(如字符串、数字),而是一种引用类型,可以包含属性(数据)和方法(函数)。

如何创建对象

有多种方式可以创建对象,最常用的是字面量语法和构造函数方式:

  • 对象字面量(推荐初学者使用):用花括号 {} 直接定义,简洁直观。
    例如:const person = { name: "小明", age: 25 };
  • 使用 Object 构造函数:调用 new Object(),较少用,但有助于理解对象本质。
    例如:const car = new Object(); car.brand = "Toyota"; car.year = 2025;
  • 使用 class(ES6+):适合需要复用、有明确结构的场景,本质仍是基于原型的对象。
    例如:class Animal { constructor(name) { this.name = name; } },然后 const dog = new Animal("旺财");

如何访问对象的属性

有两种主要语法:点号(.)和方括号([])。它们适用场景不同,不能随意互换:

  • 点号访问(.):适用于属性名是合法标识符(如字母开头、不含空格/特殊符号)且已知的场景。
    例如:person.name → "小明",person.age → 25
  • 方括号访问([]):适用于属性名含空格、特殊字符、变量名、或动态计算得出的情况。
    例如:person["full name"](带空格),person[myKey](myKey 是变量),obj["prop" + i](拼接)
  • 注意:如果访问不存在的属性,结果是 undefined,不会报错;但对 undefined 继续点属性会报 Cannot read property 'xxx' of undefined 错误。

如何修改和添加属性

对象是可变的,属性可以随时增、删、改:

  • 修改或新增属性:直接赋值即可,无论该属性原来是否存在。
    例如:person.city = "北京";(新增),person.age = 26;(修改)
  • 删除属性:delete 操作符,如 delete person.age;,之后 person.age 就是 undefined
  • 检查属性是否存在:in 操作符(检查自身+原型链)或 hasOwnProperty()(仅自身)。
    "name" in person → true,person.hasOwnProperty("age") → false(如果已被删)

基本上就这些。对象是 JavaScript 的核心,理解怎么建、怎么读、怎么改,就掌握了操作数据的基础能力。