我是JS新手。我有任务: 给定名字和电话号码,组装电话簿,将朋友的名字映射到他们各自的电话号码。然后,将为您提供未知数量的名称,以查询电话簿。对于每个查询,将电话簿中的相关条目以名称= phoneNumber的形式换行打印;如果找不到条目,则打印找不到。
注意:您的电话簿应为Dictionary / Map / HashMap数据结构。
输入格式
第一行包含一个整数,表示电话簿中的条目数。 随后的每一行在一行上以空格分隔的形式描述一个条目。第一个值是朋友的名字,第二个值是数字电话号码。
在电话簿条目行之后,存在未知数量的查询行。每行(查询)包含一个要查询的行,并且您必须继续读取行,直到没有更多输入为止。
注意:名称由小写英文字母组成,并且仅是名字。
这是我的代码。但是我不能检查名称是否存在于数组中。 Js没工作吗?
function processData(input) {
//Enter your code here
const n = parseInt(input);
const d = [];
for (var i = 1; i <= n; i++){
var line = input.split('\n').splice(i,1);
let x = line[0].split(" ");
d[x[0]] = x[1];
}
console.log(d)
let m = n;
while (true){
try{
name = input.split('\n').splice(m+1,1);
if ( d.includes(name)){
console.log(name,'=',d[name])
} else console.log('Not found')
m +=1;
}
catch(err){
break
}
}
}