new 关键字
本课属于 Coddy JavaScript 学习旅程的“面向对象编程”单元。第 5 课,共 56 课。
JavaScript 中的 new 关键字用于创建构造函数的实例,构造函数充当创建对象的模板。
为 Person 创建一个构造函数:
function Person(name, age) {
this.name = name;
this.age = age;
this.greet = function() {
return "Hello, my name is " + this.name;
};
}使用 new 关键字创建一个实例:
const john = new Person("John", 30);运行上面的代码后,john 是一个具有属性和方法的对象:
john.name的值是 "John"john.age的值是 30john.greet()会返回 "Hello, my name is John"
如果没有 new 关键字,this 就会指向全局对象(或在严格模式下为 undefined),而不是新实例。
挑战
创建一个汽车对象并打印它的描述
已提供一个用于创建汽车对象的构造函数。你的任务是:
- 使用
new关键字创建一个新的汽车对象,将 "Honda" 作为名称,将 2018 作为年份 - 在你的汽车对象上调用
getDescription方法 - 将结果打印到控制台
亲手试试
function Car(name, year) {
this.name = name;
this.year = year;
this.getDescription = function() {
return "This is a " + this.name + " from " + this.year;
};
}
// TODO:使用 new 关键字创建一个新的汽车对象,将 "Honda" 作为名称、2018 作为年份传入
// TODO:调用你的汽车对象的 getDescription 方法,并将结果打印到控制台
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
面向对象编程中的所有课
8整理 OOP 代码
将类组织到模块中自己练习: JavaScript 在线编译器