Stringify数组中的json对象,等于date

时间:2017-11-27 09:52:38

标签: javascript jquery arrays json object

我想告诉一个json对象,用今天的日期/时间字符串化属于该数组的对象。

我有一个php脚本,它获取一个json对象,其中包含多个数组,如下所示:

data: Array(55)

    0: {date: "2017112700", p: Array(1)}
    1: {date: "2017112701", p: Array(1)}
    2: {date: "2017112702", p: Array(1)}

    and so forth...55 in all.

我能够验证我的日期变量(date_test)是否与json数组中的日期变量匹配。

var date_test;

var index = json.data.findIndex(function(item, i){
  return item.date === date_test
});

console.log(index);

让我们说console.log(index);给我一个' 9'。

这会向我显示date_testitem.date匹配的位置。

现在这就是我被卡住了....我可以使用字符串化和json数组中的任何信息,但我想将与date_test匹配的对象进行字符串化。任何人吗?

3 个答案:

答案 0 :(得分:2)

获取处理搜索的对象:

var obj = json.data[index]; //your previously found index

然后将其字符串化:

var json = JSON.stringify(obj);

答案 1 :(得分:1)

您可以像这样使用 Array#find() method

let date_test = "2017112701";

var searchObj = arr.find(function(item) {
  return item.date === date_test;
});

然后你可以将其字符串化:

JSON.stringify(searchObj);

<强>演示:

&#13;
&#13;
var arr = [{
    date: "2017112700",
    p: []
  },
  {
    date: "2017112701",
    p: []
  },
  {
    date: "2017112702",
    p: []
  }
];

let date_test = "2017112701";

var searchObj = arr.find(function(item) {
  return item.date === date_test;
});
console.log(JSON.stringify(searchObj));
&#13;
&#13;
&#13;

答案 2 :(得分:0)

var json_temp = JSON.stringify(json.data [index] .p [0] [“temperature”]);然后是console.log(json_temp);