我正在尝试从电话簿中搜索名称并打印出结果(name: number
)。
我的解决方法是拆分一个预定义的数组phonebook
,然后从我得到的新数组中找到一个预定义的名称name
。搜索到的名称应与数字一起保存到预定义的para2
中。
我无法对//Ad your code here
-tag之前的代码进行任何更改。如果不对分割使用.toString
,则会出现错误。如果使用它,代码将不返回任何内容。
我猜我的问题与字符串/数组内容有关,但无法解决此问题。
// Don't change this
let name = 'Mustafa';
let para2 = document.createElement('p');
let phonebook = [
{ name : 'Anne', number : '9065' },
{ name : 'Mustafa', number : '6888' },
{ name : 'Tina', number : '4312' },
]
// Add your code here
i = 0;
do {
let splitContact = phonebook[i].toString().split('name : ', ', number : ');
let nameListed = splitContact[0]
let numberListed = splitContact[1]
if (nameListed === name) {
para2.textContent = nameListed.textContent + ': ' + numberListed.textContent;
break;
} else {
para2.textContent = 'Contact not found.';
}
i++;
} while (i < phonebook.length);
我认为您想要这样做,只需要访问作为对象的数组元素,并插入在您的情况下为名称和数字的属性
// Don't change this
let name = 'Mustafa';
let para2 = document.createElement('p');
let phonebook = [
{ name : 'Anne', number : '9065' },
{ name : 'Mustafa', number : '6888' },
{ name : 'Tina', number : '4312' },
]
// Add your code here
i = 0;
do {
let nameListed = phonebook[i].name
let numberListed = phonebook[i].number
if (nameListed === name) {
para2.textContent = nameListed.textContent + ': ' + numberListed.textContent;
break;
} else {
para2.textContent = 'Contact not found.';
}
i++;
} while (i < phonebook.length);