嗨伙计们,我正在尝试创建一个这样的javascript对象:
data = { values:[
{ X: "Apples", Y: 120 },
{ X: "Oranges", Y: 280 },
{ X: "Chocolates", Y: 180 },
{ X: "Bananas", Y: 340 },
{ X: "Tomatoes", Y: 400 },
]};
Run Code Online (Sandbox Code Playgroud)
我试过这个,但它不起作用?
var data = {};
for (i = 0; i < json.Answers.length; i++){
data.values[i].X = json.Answers[i].AnswerText
data.values[i].Y = json.Answers[i].Responses.length
}
Run Code Online (Sandbox Code Playgroud)
json部分很好,有关构建对象的任何想法吗?
首先,你要使用values的属性data,你从来没有定义.更改
var data = {};
Run Code Online (Sandbox Code Playgroud)
至
var data = {values: []};
Run Code Online (Sandbox Code Playgroud)
这会创建values数组.
此外,在循环中,您尝试分配不存在的对象.将循环的内容更改为:
data.values[i] = {
X: json.Answers[i].AnswerText,
Y: json.Answers[i].Responses.length
};
Run Code Online (Sandbox Code Playgroud)
这会在values您构建数组时创建数组中的每个对象.
所以:
var data = {values: []};
for (i = 0; i < json.Answers.length; i++){
data.values[i] = {
X: json.Answers[i].AnswerText,
Y: json.Answers[i].Responses.length
};
}
Run Code Online (Sandbox Code Playgroud)
(旁注:i如果尚未宣布,请不要忘记宣布,以免你成为隐形全球恐怖的牺牲品.)
| 归档时间: |
|
| 查看次数: |
69 次 |
| 最近记录: |