【问题标题】:Get JSON stringify value获取 JSON 字符串化值
【发布时间】:2017-07-06 13:05:20
【问题描述】:

我有这样的 JSON 字符串化数据:

[{"availability_id":"109465","date":"2017-02-21","price":"430000"},{"availability_id":"109466","date":"2017-02-22","price":"430000"},{"availability_id":"109467","date":"2017-02-23","price":"430000"}]

我只想获得该数据的 价格 值。这种方法我试过了,但是不行。

var stringify = JSON.stringify(values);

for(var i = 0; i < stringify.length; i++)
{
    alert(stringify[i]['price']);
}

我该怎么做?

【问题讨论】:

  • stringify 你的变量名?还是您指的是JSON.stringify 方法?然后,这个变量是你发布的 json 字符串吗?
  • @Sylvain var stringify = JSON.stringify(values); 我从中得到了。
  • wat 错误你在 chrome 的控制台中为我工作正常
  • @Asad 我在警告框中未定义。
  • 参考我的 naswer @Antonio

标签: javascript json loops stringify


【解决方案1】:

此代码只会获取价格详情。

var obj = '[{"availability_id":"109465","date":"2017-02-21","price":"430000"},{"availability_id":"109466","date":"2017-02-22","price":"430000"},{"availability_id":"109467","date":"2017-02-23","price":"430000"}]';
var stringify = JSON.parse(obj);
for (var i = 0; i < stringify.length; i++) {
    console.log(stringify[i]['price']);
}

【讨论】:

  • 需要注意的是,这段代码 sn-p 中的变量命名错误(操作错误)。我会将其更改为:obj -> jsonString(或dataString),stringify -> jsonObj(或parsedData,或简单地data
【解决方案2】:

你会得到一个像这样的字符串化对象

var obj='[{"availability_id":"109465","date":"2017-02-21","price":"430000"},
{"availability_id":"109466","date":"2017-02-22","price":"430000"},
{"availability_id":"109467","date":"2017-02-23","price":"430000"}]';

使用 JSON.parse(object) 解析你的 obj 然后应用这个循环广告让我知道它有任何错误 撒谎

var parseObject = JSON.parse(object);

【讨论】:

    【解决方案3】:

    观察:

    如果要解析array of objects 以获取属性value,则必须先转换为JSON object

    演示

    var jsonStringify = '[{"availability_id":"109465","date":"2017-02-21","price":"430000"},{"availability_id":"109466","date":"2017-02-22","price":"430000"},{"availability_id":"109467","date":"2017-02-23","price":"430000"}]';
    
    var jsonObj = JSON.parse(jsonStringify);
    
    for(var i = 0; i < jsonObj.length; i++)
    {
        alert(jsonObj[i]['price']);
    }

    【讨论】:

      【解决方案4】:

      在选择数据之前不要使用stringify,而是应该直接在values数组上使用循环。

      例如:

      var priceArray = array();
      values.forEach (data) {
          alert(data['price'];
          priceArray.push(data['price']);
      }
      
      stringify = JSON.stringify(values);
      stringifiedPriceArray = JsON.stringify(priceArray);
      

      一旦字符串化,您将无法访问数组中的数据

      【讨论】:

        猜你喜欢
        • 2015-09-16
        • 1970-01-01
        • 2016-09-30
        • 2021-07-13
        • 1970-01-01
        • 2023-03-18
        • 1970-01-01
        • 2021-03-13
        • 1970-01-01
        相关资源
        最近更新 更多