新闻中心

Object /ˈɒbdʒɪkt/ 物体;对象;目标 一种复杂的数据类型,可以包含多个键值对,用于存储和组织数据


在 JavaScript 中,Object 是一种用于存储键值对的复杂数据类型。对象可以包含属性和方法。以下是一些关于 Object 类型的示例和常见操作:


    // 创建一个对象
let person = {
    name: 'Alice',
    age: 25,
    greet: function() {
        console.log('Hello, my name is ' + this.name);
    }
};

// 访问对象的属性
console.log(person.name); // 输出: Alice
console.log(person.age); // 输出: 25

// 调用对象的方法
person.greet(); // 输出: Hello, my name is Alice

// 添加新属性
person.job = 'Developer';
console.log(person.job); // 输出: Developer

// 修改属性值
person.age = 26;
console.log(person.age); // 输出: 26

// 删除属性
delete person.job;
console.log(person.job); // 输出: undefined

// 使用方括号语法访问属性
console.log(person['name']); // 输出: Alice

// 动态设置属性
let prop = 'age';
console.log(person[prop]); // 输出: 26

// 遍历对象的属性
for (let key in person) {
    if (person.hasOwnProperty(key)) {
        console.log(key + ': ' + person[key]);
    }
}
// 输出:
// name: Alice
// age: 26
// greet: function() { console.log('Hello, my name is ' + this.name); }

// 对象方法
let keys = Object.keys(person);
console.log(keys); // 输出: [ 'name', 'age', 'greet' ]

let values = Object.values(person);
console.log(values); // 输出: [ 'Alice', 26, [Function: greet] ]

let entries = Object.entries(person);
console.log(entries); // 输出: [ ['name', 'Alice'], ['age', 26], ['greet', [Function: greet]] ]

// 合并对象
let additionalInfo = { job: 'Developer', country: 'USA' };
let updatedPerson = Object.assign({}, person, additionalInfo);
console.log(updatedPerson);
// 输出: { name: 'Alice', age: 26, greet: [Function: greet], job: 'Developer', country: 'USA' }

Object 类型在 JavaScript 中有许多内置方法,可以对对象进行各种操作,如: 

1、 Object.keys(obj):返回对象自身属性名的数组。 

2、Object.values(obj):返回对象自身属性值的数组。 

3、Object.entries(obj):返回对象自身属性的键值对数组。 

4、Object.assign(target, ...sources):将一个或多个源对象的所有可枚举属性复制到目标对象。