从数据库SQLITE加载JSON数组

时间:2013-09-05 20:58:12

标签: javascript arrays json sqlite multidimensional-array

我在Javascript JSON数组中有以下代码:

params = {
    "fighters": [
        {
            "name": "Muhammad Ali",
            "nickname": "The Greatest"
        },
        {
            "name": "Chuck Liddell",
            "nickname": "The Iceman"
        }
    ]
};

现在我从数据库SQLITE中获得了“N”变量数据“name”和“nickname”。

这个想法是迭代地显示数据库中存在的所有“缺口”和“昵称”。

我如何填补它?

我测试了一个运行所有安排的FOR并且我给它们充电,因为它做了类似的事情:

params = {
    "fighters": [ show[i] ]
};

它不起作用。

我希望我能正确解释。

感谢。

2 个答案:

答案 0 :(得分:0)

这将检索所有战士的名字:

var len = params.fighters.length;
   for (var i = 0; i < len; i++) {
      console.log( params.fighters[i].name );
   }

要更改战斗机名称值,请执行以下操作:

var len = params.fighters.length;
    for (var i = 0; i < len; i++) {
      params.fighters[i].name = 'Your_Fighter_Name';
    }

希望我帮助过你。

答案 1 :(得分:0)

假设我们使用fetchAll(function (error, rows) {})进行node-sqlite回调(意味着行是一个对象数组,对象中的键是列名):

var params = { "fighters" : [] };

rows.forEach(function (row) { 
    params.fighters.push({name: row.name, nickname: row.nickname});
});

请记住,JSON是JS的子集,它不是它自己的语言。它是 NOT 一种编程语言。你不能用JSON“做”任何东西,因为它不是一种编程语言。你不能迭代,递归,填充......你可以用JS做到这一点。

很抱歉重复自己,但显然有很多人误以为JSON不是。我不是假设你这样做,但它不能经常说;-)你想如何发送JSON我无法告诉你,因为你的问题中没有信息。如果您希望通过基于字节的协议(如HTTP)执行此操作,则可能需要使用JSON.stringify()来获取可通过网络发送的对象的文本表示。

查看我的小提琴版本:http://jsfiddle.net/dpL4c/2/