检查数组中是否存在元素,如果找不到则无法打印

我是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
    }
}

}

评论