如何切割json字符串?

时间:2012-11-13 14:38:59

标签: javascript jquery json

我在这里遇到问题,不知道如何解决它......

我有一个像这样的json文件:

{"data":[{"kw":"48","val":"10","val2":"05"},{"kw":"49","val":"04","val2":"05"}]}

但我需要这种格式:

[{"kw":"48","val":"10","val2":"05"},{"kw":"49","val":"04","val2":"05"}]

在javascript / jQuery中,我发出ajax请求并返回json:

$.ajax({
  type : "POST",
  cache : "false", // DEBUG
  url : weburl,
  dataType : "json",
  contentType : "application/json; charset=utf-8",
  success : function(data) {
    // Strip data?
  }
  });

有谁知道怎么做? 谢谢!

5 个答案:

答案 0 :(得分:3)

success : function (data) {
    var array = data ? data.data : null;
    // now perform the required operations with array variable.
}

这将只返回数组,而不是包装在对象中。

答案 1 :(得分:2)

$.ajax({
    type: "POST",
    cache: "false", // DEBUG
    url: weburl,
    dataType: "json",
    contentType: "application/json; charset=utf-8",
    success: function(data) {
        var arrayYouWant = data.data; // http://thedailywtf.com/Articles/Data-Data-data-Data.aspx
    }
});

答案 2 :(得分:2)

为什么你需要剥离它,你只需要引用它

success : function(data) {
    var myArrayofObjects = data.data;
}

答案 3 :(得分:0)

为了真正理解Javascript中Member operators的读物,尤其是点符号。 JSON是Javascript的子集,JSON对象最终是Javascript对象。

答案 4 :(得分:0)

不确定存档的含义。您的意思是简单地访问与数据属性关联的数组吗?

该数组与JSON字符串中的“data”属性相关联。我可能会更改传递给success函数的数据参数的名称。

试试这个:

$.ajax({
    type: "POST",
    cache: "false", // DEBUG
    url: weburl,
    dataType: "json",
    contentType: "application/json; charset=utf-8",
    success: function(resp) {
        var yourArray = resp.data; 
        console.log(yourArray);
    }
});