0

您好 :) 我如何找出加载的图片具有哪个“计数”-id?

加载的图片是:“df5ddc27f7569f83e3867bec71a2cac0.jpg”
而我的json是:

[
  {"count":1,"file":"8b6c5592f0378dc8c56e591a7b147826.jpg"},
  {"count":2,"file":"a44618c1afe93be486382ceb38536e02.jpg"},
  {"count":3,"file":"3c692942d69fba0d16971e0685f42757.jpg"},
  {"count":4,"file":"df5ddc27f7569f83e3867bec71a2cac0.jpg"}
]

有人对我有想法吗?

4

2 回答 2

2

如果您的图像名称是一个键,那么您可以“查询”(索引查找)JSON 的计数,如下所示:

var jsondata = [
  "8b6c5592f0378dc8c56e591a7b147826.jpg" : {"count":1},
  "a44618c1afe93be486382ceb38536e02.jpg" : {"count":2},
  "3c692942d69fba0d16971e0685f42757.jpg" : {"count":3},
  "df5ddc27f7569f83e3867bec71a2cac0.jpg" : {"count":4}
];

function getId(file) {
  if(jsondata.hasOwnProperty(file)) {
    return jsondata[file].count;
  } else {
    //Key not Found
    return 0;
  }
}

但是对于它目​​前的设计,您需要遍历每个值(如 ocanal 的回答所示)并查找值等于您所追求的图像的元素“文件”。

于 2013-03-11T19:23:13.440 回答
2

我假设您正在尝试使用 javascript 执行此操作

var jsondata = [
  {"count":1,"file":"8b6c5592f0378dc8c56e591a7b147826.jpg"},
  {"count":2,"file":"a44618c1afe93be486382ceb38536e02.jpg"},
  {"count":3,"file":"3c692942d69fba0d16971e0685f42757.jpg"},
  {"count":4,"file":"df5ddc27f7569f83e3867bec71a2cac0.jpg"}
];

function getId(file) {
    for(var f in jsondata) {
       if(jsondata[f].file == file)
         return jsondata[f].count;
    }
}

var id = getId("df5ddc27f7569f83e3867bec71a2cac0.jpg"); //count-id
于 2013-03-11T19:30:38.227 回答