JavaScript如何实现面向对象编程?
1. 对象字面量(Object Literals)
对象字面量(Object Literals): JavaScript 中的对象是一组键值对的集合,可以用来表示现实世界中的实体和属性。
let person = {
name: 'John',
age: 30,
greet: function() {
console.log('Hello, my name is ' + this.name);
}
};
person.greet(); // 输出: Hello, my name is John
2. 构造函数和原型(Constructor Functions and Prototypes)
构造函数和原型(Constructor Functions and Prototypes): 可以使用构造函数来创建对象,并通过原型(prototype)来实现对象之间的继承。
function Person(name, age) {
this.name = name;
this.age = age;
}
Person.prototype.greet = function() {
console.log('Hello, my name is ' + this.name);
};
let person = new Person('John', 30);
person.greet(); // 输出: Hello, my name is John
3. ES6 中的类(Classes in ES6)
ES6* 中的类(Classes in ES6): ES6 引入了类的概念,使得 JavaScript 更加接近传统的面向对象语言。
*ES6有哪些特性?
class Person {
constructor(name, age) {
this.name = name;
this.age = age;
}
greet() {
console.log('Hello, my name is ' + this.name);
}
}
let person = new Person('John', 30);
person.greet(); // 输出: Hello, my name is John