【发布时间】:2015-10-14 16:36:24
【问题描述】:
var Contact = function(name, number) {
this.name = name;
this.number = number;
}
Contact.prototype.greet = function() {
document.getElementById("output").innerHTML = this.name + " " + this.number;
};
function createContact(newName, newNumber) {
var newName = new Contact(newName, newNumber);
}
var tyler = new Contact("Tyler", "555-555-5555");
var mike = new Contact("mike", "555-555-5555");
createContact("steve", "555-555-5555");
alert(steve.name);
$("#addButton").click(function() {
steve.greet();
});
我对上述代码有疑问。我遇到的问题是 createContact 函数。我想要完成的是编写一个函数,该函数最终将基于用户输入创建一个带有姓名和号码的新联系人。我还希望新联系人对象的名称是 newName 的名称,因此 var newName = new Contact。使用现在的 createContact 函数并不能实现这一点。我可以像使用“tyler”和“mike”联系人一样直接创建一个新的联系人对象,但不能通过函数。
我试图自己找到答案,但没有运气。我真的不知道此时我应该搜索什么,所以我只是卡住了。
另外,当我说我“创建了 Contact 对象的 tyler 对象”时,我是不是用错了“对象”这个词?
谢谢!
【问题讨论】:
-
您永远不会像使用
tyler和mike那样创建steve变量来保存联系人 -
var newName是一个局部变量而不是全局变量。 -
只需返回在
createContact中创建的变量.. 请看这个问题stackoverflow.com/questions/5887386/… ..Custom Object部分
标签: javascript object