pri*_*nka 4 javascript arrays dictionary
我在 JavaScript 中有一个字典数组,我想通过匹配是否找到 ID 将一个元素添加到数组中的一个字典中。如何搜索是否找到了 ID?
这是我的字典:
{
priyanka: [ { socketid: 'bVLmrV8I9JsSyON7AAAA' } ],
test: [ { socketid: 'Q2n5RzcJqPeLZ5T9AAAB' } ] } ]
}
Run Code Online (Sandbox Code Playgroud)
我想通过搜索socketid
“bVLmrV8I9JsSyON7AAAA”来添加一个元素并将一个元素添加到字典中。
小智 5
在数据的当前状态下,您至少必须使用线性搜索。
var keyToFind = 'Q2n5RzcJqPeLZ5T9AAAB';
for(var i in dictionary){
if(dictionary[i].socketid == keyToFind){
// Add an element to the dictionary
break; // If you want to break out of the loop once you've found a match
}
}
Run Code Online (Sandbox Code Playgroud)
var myObject = {
priyanka: [ { socketid: 'bVLmrV8I9JsSyON7AAAA' } ],
test: [ { socketid: 'Q2n5RzcJqPeLZ5T9AAAB' } ] } ]
};
myObject.priyanka.forEach(function(item){
if(item.socketid === 'bVLmrV8I9JsSyON7AAAA'){
// There is a socketid equals to bVLmrV8I9JsSyON7AAAA in priyanka
break;
} else {
// Socketid not found
}
});
Run Code Online (Sandbox Code Playgroud)
请注意 Array.forEach 不完全跨浏览器兼容,也许您想使用一个简单的for
循环:
for(var i=0; i < myObject.priyanka.length; i++){
if(myObject.priyanka[i].socketid === 'bVLmrV8I9JsSyON7AAAA'){
// There is a socketid equals to bVLmrV8I9JsSyON7AAAA in priyanka
break;
} else {
// Socketid not found
}
}
Run Code Online (Sandbox Code Playgroud)