此函数接受键值对对象的数组,并返回键值的字典。
例如
的输入[{ key: 'prop1', value: 'value1' }, { key: 'prop2', value: 'value2' }]
会导致
{ prop1: 'value1', prop2: 'value2' };
如果用户提供重复的密钥,则会抛出错误消息'You cannot provide duplicate keys'
function createDictionary(input) {
}
答案 0 :(得分:0)
尝试这样的事情
function createDictionary(input) {
var res = {};
input.forEach(function(obj) {
if (!res.hasOwnProperty(obj.key)) {
res[obj.key] = obj.value;
} else {
throw new Error('You cannot provide duplicate keys.');
}
});
return res;
}
答案 1 :(得分:0)
var a=[{key:'prop1',value:'value1'},{key:'prop2',value:'value2'}]
var dict={}
for (var i=0; i<a.length; i++){
if (!(a[i]['key'] in dict)){
dict[a[i]['key']]=a[i]['value']
}
else{
throw new Error("Key already exists.")
}
}
console.log(dict)
试试这个逻辑。你也可以使用foreach循环。