📅  最后修改于: 2023-12-03 14:42:40.517000             🧑  作者: Mango
在JavaScript中,对象是数据类型中最复杂的一个。对象可以存储数据和函数,也可以动态添加或删除属性。对象可以是自定义的,也可以是内置的。
使用对象字面量可以直接创建一个包含属性和方法的对象,如下所示:
let obj = {
name: 'John',
age: 30,
greet: function() {
console.log('Hello, my name is ' + this.name);
}
};
使用构造函数也可以创建对象,如下所示:
function Person(name, age) {
this.name = name;
this.age = age;
}
let person1 = new Person('John', 30);
console.log(person1.name); // 输出 John
使用 Object.create()
方法也可以创建对象,如下所示:
let obj = Object.create(null);
obj.name = 'John';
obj.age = 30;
可以使用点运算符或方括号来访问对象的属性,如下所示:
let person = {
name: 'John',
age: 30
};
console.log(person.name); // 输出 John
console.log(person['age']); // 输出 30
可以使用点运算符或方括号来修改对象的属性,如下所示:
let person = {
name: 'John',
age: 30
};
person.name = 'Mike';
person['age'] = 40;
console.log(person.name); // 输出 Mike
console.log(person['age']); // 输出 40
可以使用 delete
关键字来删除对象的属性,如下所示:
let person = {
name: 'John',
age: 30
};
delete person.age;
console.log(person.age); // 输出 undefined
对象的方法就是存储在对象中的函数。可以像访问属性一样来调用对象的方法,如下所示:
let person = {
name: 'John',
age: 30,
greet: function() {
console.log('Hello, my name is ' + this.name);
}
};
person.greet(); // 输出 Hello, my name is John
可以使用 for...in
循环来遍历对象的属性和方法,如下所示:
let person = {
name: 'John',
age: 30,
greet: function() {
console.log('Hello, my name is ' + this.name);
}
};
for (let prop in person) {
console.log(prop + ': ' + person[prop]);
}
输出结果为:
name: John
age: 30
greet: function() {
console.log('Hello, my name is ' + this.name);
}
对象是JavaScript中最重要的数据类型之一。我们可以使用字面量、构造函数或 Object.create()
来创建对象,使用点运算符或方括号来访问、修改或删除对象的属性,使用函数来定义对象的方法。最后,我们可以使用 for...in
循环来遍历对象的属性和方法。