基于JS对象,操作属性、方法详解
什么是JS对象
JS对象是JS语言中最为核心的所有元素之一,用于封装各种数据类型和功能。
如何创建JS对象
在JS中,创建对象有两种方式:
- 使用对象字面量
通过使用对象字面量,可以创建一个空对象,并在对象字面量中定义对象属性和方法。
示例:
let person = {
name: 'Alice',
age: 22,
sayHi: function() {
console.log('Hi! My name is ' + this.name);
}
};
person.sayHi(); // Hi! My name is Alice
在这个例子中,我们使用对象字面量创建了一个对象,并添加了属性name、age和方法sayHi。
- 使用构造函数
使用构造函数也可以创建对象,构造函数可以看作是一个重复使用的模板,通过调用构造函数来创建一个新的对象。
示例:
function Person(name, age) {
this.name = name;
this.age = age;
this.sayHi = function() {
console.log('Hi! My name is ' + this.name);
}
}
let person1 = new Person('Bob', 30);
let person2 = new Person('Cathy', 25);
person1.sayHi(); // Hi! My name is Bob
person2.sayHi(); // Hi! My name is Cathy
在这个例子中,我们使用构造函数创建了两个对象person1和person2,并分别给它们设置了name、age和sayHi属性和方法。
如何操作JS对象属性
可以使用点(.)或方括号([])来访问或修改对象的属性。
let person = {
name: 'Alice',
age: 22
};
person.name; // Alice
person['age']; // 22
person.age = 23;
person['name'] = 'Bob';
在这个例子中,我们访问了对象person的name和age属性,并对其进行了修改。
如何操作JS对象方法
对象方法就是对象中的函数属性,可以通过点(.)或方括号([])来访问或调用对象的方法。
let person = {
name: 'Alice',
age: 22,
sayHi: function() {
console.log('Hi! My name is ' + this.name);
}
};
person.sayHi(); // Hi! My name is Alice
person['sayHi'](); // Hi! My name is Alice
在这个例子中,我们访问并调用了对象person的sayHi方法。
JS对象的一些方法
除了访问和修改属性和方法以外,JS还提供了一些操作对象的方法:
Object.keys(obj)
该方法会返回一个由对象中所有可枚举属性的键组成的数组。
示例:
let person = {
name: 'Alice',
age: 22
};
Object.keys(person); // ['name', 'age']
在这个例子中,我们调用了对象person的Object方法,并使用Object.keys方法返回对象person的属性键数组。
Object.values(obj)
该方法会返回一个由对象中所有可枚举属性的值组成的数组。
示例:
let person = {
name: 'Alice',
age: 22
};
Object.values(person); // ['Alice', 22]
在这个例子中,我们调用了对象person的Object方法,并使用Object.values方法返回对象person的属性值数组。
示例
示例1:使用类来创建对象
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
sayHi() {
console.log('Hi! My name is ' + this.name);
}
}
let person1 = new Person('Bob', 30);
let person2 = new Person('Cathy', 25);
person1.sayHi(); // Hi! My name is Bob
person2.sayHi(); // Hi! My name is Cathy
在这个例子中,我们使用ES6中的class语法创建了一个Person类,并在类中定义了两个属性name和age以及一个方法sayHi。然后我们通过调用构造函数,创建了两个对象person1和person2,最后使用对象的方法sayHi输出对象的名称。
示例2:使用Object.keys方法取出对象属性名称数组
let person = {
name: 'Alice',
age: 22
};
let keysArray = Object.keys(person); // ['name', 'age']
console.log(keysArray[0]); // name
console.log(keysArray[1]); // age
在这个例子中,我们创建了一个名叫person的对象,并使用Object.keys方法从对象中提取了属性名称的数组keysArray。然后我们使用索引来输出数组中的每个属性名称,以此检查Object.keys方法是否正确运行。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:基于js对象,操作属性、方法详解 - Python技术站