首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript DataSet

Javascript DataSet
EN

Stack Overflow用户
提问于 2015-04-22 18:12:49
回答 3查看 616关注 0票数 1
代码语言:javascript
复制
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的值获得计数器的值:

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-04-22 18:16:51

我可以想到三个选择:

  1. dataset集合上的传统for循环。在循环时检查每个元素,并在找到值后中断。
  2. 如果可用,可以使用Array.findIndex,或者使用MDN文档中的填充。
  3. 尝试像LINQ到JavaScript这样的东西(如果这是您所需要的全部功能,那么绝对是过分了)。
票数 4
EN

Stack Overflow用户

发布于 2015-04-22 18:25:54

你可以试试

代码语言:javascript
复制
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
}

希望这能有所帮助

票数 1
EN

Stack Overflow用户

发布于 2015-04-22 18:26:03

注意,在21 at 21at {"seq_id":"2","counter":21"}之前,出现缺失的{"seq_id":"2","counter":21"}

试着利用$.grep()

代码语言:javascript
复制
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"));
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29805738

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档