我有两个bob和mary对象,我想在一个函数中使用数组调用它们的firstName和lastName值,但这段代码似乎无法正常工作
var bob = {
firstName: "Bob",
lastName: "Jones",
phoneNumber: "(650) 777-7777",
email: "bob.jones@example.com"
};
var mary = {
firstName: "Mary",
lastName: "Johnson",
phoneNumber: "(650) 888-8888",
email: "mary.johnson@example.com"
};
var contacts = [bob, mary];
var printPerson = function(person) {
console.log(this.firstName + " " + this.lastName);
}
printPerson(contacts[0]);
printPerson(contacts[1]);
我缺少什么?
答案 0 :(得分:2)
在您的函数this
中引用window
对象。
使用传递给函数的对象作为参数。
使用person.firstName
和person.lastName
从相应的对象中获取名称。
var printPerson = function(person) {
console.log(person.firstName + " " + person.lastName);
// ^^^^^^ ^^^^^^
}
答案 1 :(得分:1)
您需要从person参数访问firstName和lastName属性。所以,你的代码必须是:
var printPerson = function(person){
console.log(**person**.firstName + " " + **person**.lastName);
}