javascript - 在 json 构造中更改索引

标签 javascript json

<分区>

我有以下代码来构造一个 json 对象:

var myJSONObject = [];
var id = "1", value = "I'm a value !";
myJSONObject.push({id:value});

在这个构造之后,当我显示时,我得到类似的东西:[{"id":"I'm a value !"}]

但我想要以下内容:[{"1":"I'm a value !"}] 我该怎么办?

最佳答案

你需要括号符号:

var myJSONObject = [];
var id = "1", value = "I'm a value !";
var obj = {};
obj[id] = value;
// ^------- THIS!
myJSONObject.push(obj);

并且由于您的 key 是数字,因此您也需要括号表示法才能读取它:

console.log(myJSONObject[0][1]); // or "1"; both will log "I'm a value"

另外,请注意,您所说的“JSON 对象”(没有这样的东西!)实际上是一个 JavaScript 数组,其中包含一个 JavaScript 对象。如果您需要 JSON(例如将其发布到服务器),您可以使用:

var jsonString = JSON.stringify(myJSONObject);

关于javascript - 在 json 构造中更改索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18514262/

相关文章:

javascript - 印地语文本在网页上正确显示,但在 mysql 数据库中插入错误

ruby-on-rails - 将MongoMapper对象中的嵌套对象包含在JSON响应中

java - 将数组从 php 发送到 android studio

java - 扩展谷歌库方法的最佳方式

javascript - 在 div 中使用图像而不使用 <img> 标签

JavaScript window.onsave 事件

arrays - 要构造的字符串数组

javascript - 如果不存在则将对象推送到空数组angularjs

javascript - 使用 ES5 的 AOT(提前)编译

javascript - 使用包含选择器在多列中搜索