在 JavaScript 中,prototype 是一个特殊的属性,用于指向对象的原型。原型是一个对象,其他对象可以通过原型继承它的属性和方法。
以下是在 JavaScript 中使用 prototype 的一些常见用法:
function Person(name) {
this.name = name;
}
Person.prototype.sayHello = function() {
console.log('Hello, my name is ' + this.name);
};
var john = new Person('John');
john.sayHello(); // 输出:Hello, my name is John
function Animal() {}
Animal.prototype.eat = function() {
console.log('Eating...');
};
function Dog() {}
Dog.prototype = Object.create(Animal.prototype); // 继承 Animal 的原型
Dog.prototype.bark = function() {
console.log('Barking...');
};
var dog = new Dog();
dog.eat(); // 输出:Eating...
dog.bark(); // 输出:Barking...
function Calculator() {}
Calculator.prototype.add = function(a, b) {
return a + b;
};
Calculator.prototype.subtract = function(a, b) {
return a - b;
};
var calculator1 = new Calculator();
console.log(calculator1.add(1, 2)); // 输出:3
var calculator2 = new Calculator();
console.log(calculator2.subtract(5, 3)); // 输出:2
这些只是使用 prototype 的一些常见用法,还有其他更多高级的用法,例如使用 Object.create() 创建对象、使用 constructor 属性获取对象的构造函数等等。