function fetchJobs()
{
var seq_id = 2;
var dataset = [{"seq_id":"1","counter":"20"},{"seq_id":"2","counter":21"}]
}如果我的seq_id是2,如果seq id是1,我想要得到值20,这是计数器值。
如何根据seq_id的值获得计数器的值:
发布于 2015-04-22 18:16:51
我可以想到三个选择:
dataset集合上的传统for循环。在循环时检查每个元素,并在找到值后中断。Array.findIndex,或者使用MDN文档中的填充。发布于 2015-04-22 18:25:54
你可以试试
function fetchJobs()
{
var seq_id = 2;
var dataset = [{"seq_id":"1","counter":"20"},{"seq_id":"2","counter":"21"}]
var output = "";
for (var i = 0; i < dataset.length; i++){
if(dataset[i]['seq_id'] == seq_id){
output = dataset[i]['counter'].toString();
}
}
console.log(output); //Or do whatever
}希望这能有所帮助
发布于 2015-04-22 18:26:03
注意,在21 at 21at {"seq_id":"2","counter":21"}之前,出现缺失的{"seq_id":"2","counter":21"}
试着利用$.grep()
var dataset = [{
"seq_id": "1",
"counter": "20"
}, {
"seq_id": "2",
"counter": "21"
}];
var filtered = function(id) {
return $.grep(dataset, function(val, key) {
return val.seq_id === id
})[0].counter
};
console.log(filtered("1"), filtered("2"));<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
https://stackoverflow.com/questions/29805738
复制相似问题