如何拆分从 json 文件中读取的数据

How can I split data read from a json file?

本文关键字:文件 读取 数据 json 何拆分 拆分      更新时间:2023-09-26

我在data.json文件中有这个json数据。

[
"1009 2000",
"1009 2001",
"1002 2002",
"1003 2002"
]

我正在循环浏览这些数据并根据,拆分数据,如以下代码所示

var show = function () {
    var span = $('.input');
    var c = $('ul');
    $.getJSON('data/data.json', function (id) {
        var j = id.split(',');
        var hsl = j[0];
        var ny = j[1];
        $('<li>' + id + '</li>').appendTo(c);
        $(c).appendTo(span);
        console.log(hsl);
    });
}

但这在控制台中给了我这个错误

Object 1009 2000,1009 2001,1002 2002,1003 2002 has no method 'split' 

如何拆分此数据,以便可以像这样显示它

 1009 2000
 1009 2001
 1002 2002
 1003 2002

你不需要拆分任何东西,只需循环:

$.getJSON('data/data.json', function (ids) {
    for (var i = 0; i < ids.length; i++) {
        var id = ids[i];
        console.log(id);
    }
});

jQuery会自动将从服务器返回的字符串解析为javascript数组,以便您可以直接访问其元素。

如果要检索 2 个令牌,可以按空格拆分每个元素。

id 变量实际上是数组,因为 getJson 会为您解析它。只需遍历数组并打印每个项目即可。

似乎你的意思是说返回的数据是一个字符串,你需要把它转换为一个数组。

$.getJSON('data/data.json', function(id) {
    id = JSON.parse(id);
    for(var i=0, len=id.length; i<len; i++){
        //do your stuff here
    }
});