0

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

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

现在我有来自数据库 SQLITE 的“N”个变量数据“名称”和“昵称”。

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

我该如何填写?

我用一个运行所有安排的 FOR 进行了测试,我向它们收费,因为它做了这样的事情:

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

这没用。

我希望我解释正确。

谢谢。

4

2 回答 2

0

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

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

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

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

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

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

于 2013-09-05T21:14:28.070 回答
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';
    }

希望我对你有所帮助。

于 2013-09-05T21:06:05.707 回答