【发布时间】:2017-05-18 20:56:02
【问题描述】:
假设我们正在定义一个 Person 构造函数并像这样创建一个新人:
function Person(name){
this.name = name;
}
var person = new Person("John Doe");
以下 2 个实现输出:来自 John Doe 的Hello:
第一次实施
person.sayHello = function(){console.log("Hello from " + this.name);}
运行代码1
function Person(name){this.name = name;}
var person = new Person("John Doe");
person.sayHello = function(){console.log("Hello from " + this.name);}
person.sayHello();
第二次实施
Person.prototype.sayHello = function(){console.log("Hello from " + this.name);}
运行代码2
function Person(name){this.name = name;}
var person = new Person("John Doe");
Person.prototype.sayHello = function(){console.log("Hello from " + this.name);}
person.sayHello();
我的问题是:
- 由于结果相似,什么时候最好将属性直接添加到创建的对象中?
【问题讨论】:
标签: javascript