【问题标题】:GetJSON's data : clarification neededGetJSON 的数据:需要澄清
【发布时间】:2013-07-01 00:21:11
【问题描述】:

鉴于 JSON 包含:

[
{"myKey":"A","status":0,"score":1.5},{"myKey":"C","status":1,"score":2},
{"myKey":"D","status":0,"score":0.2},{"myKey":"E","status":1,"score":16},
{"myKey":"F","status":0,"score":0.4},{"myKey":"G","status":1,"score":3}
]

鉴于 JS 如下:

MyJSON = $.getJSON('http://d.codio.com/hugolpz/getJson--/App/data/statusStarter2.json' );

如何将 JSON 的内容(字符串化)放入 localStorage.data 中?

注意: localStorage.data = JSON.stringify(MyJSON); 返回{"readyState":1},这不是我的愿望。我查看了jQuery.getJSON/,但我对function (data) 感到很困惑。

【问题讨论】:

  • function(data) 是一个匿名回调函数,当 json 被检索到时会被调用,并且会将您的数据包含在变量 data 或任何您调用的参数中。

标签: javascript jquery getjson


【解决方案1】:

getJSON 异步工作,返回的是 AJAX 请求对象。所以使用getJSON的成功回调函数来接收数据

$.getJSON('http://d.codio.com/hugolpz/getJson--/App/data/statusStarter2.json', function(data) {
  // do JSON.stringify(data) here
});

【讨论】:

    【解决方案2】:

    你试过了吗:

    localStorage.setItem('data', JSON.stringify(MyJSON));
    

    var JSON = localStorage.getItem('data');
    

    因为 ajax 是异步的:

    $.getJSON('url', function(MyJSON) {
         localStorage.setItem('data', JSON.stringify(MyJSON));
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-09
      • 2012-07-18
      • 1970-01-01
      • 2023-03-09
      • 1970-01-01
      • 2011-04-18
      • 1970-01-01
      • 2018-11-21
      相关资源
      最近更新 更多