请查看以下代码以获取更多信息.
var person = {
firstname:"john",
lastname:"doe",
greet: function(){
return "hello " + this.firstname + " " + this.lastname;
}
}
console.log(person.greet());
Run Code Online (Sandbox Code Playgroud)
如何使上面的对象文字函数greet()dymanic?就像我可以通过params值例如person.greet('jessie','jay')将返回hello jessie jay
使用构造函数方法(实例)以使函数动态化和可重用是否更好?我发现object literal只是用来组织代码.
我建议你使用Constructor函数.此模式称为工厂模式.此处的函数充当类,并且可以为每个人创建新对象.
function Person(firstname, lastname) {
this.firstname = firstname;
this.lastname = lastname;
}
Person.prototype.greet = function () {
return 'Hello ' + this.firstname + ' ' + this.lastname;
};
var jon = new Person('Jon', 'Skeet');
var tushar = new Person('Tushar', 'Jadhav');
console.log(jon.greet()); // Hello Jon Skeet
console.log(tushar.greet()); // Hello Tushar Jadhav
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
131 次 |
| 最近记录: |