在 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):将一个或多个源对象的所有可枚举属性复制到目标对象。