一个基本问题,我正在尝试这段代码:
var number_questions = postsJSON1[i]['question'].length;
for (a=0; a<number_questions; a++) {
var post+[a] = postsJSON1[i]['question'][a];
}
此行会出错:var post+[a]
正确的方法是什么?
答案 0 :(得分:9)
这会给你一个数组:
var number_questions = postsJSON1[i]['question'];
var post = [];
for (a=0; a<number_questions; a++) {
post[a] = postsJSON1[i]['question'][a];
}
这会给你一个字符串:
var number_questions = postsJSON1[i]['question'];
var post = '';
for (a=0; a<number_questions; a++) {
post += postsJSON1[i]['question'][a];
}
BTW我不知道postsJSON1[i]['question']
的内容,但以下看起来有点奇怪:
var number_questions = postsJSON1[i]['question'];
不应该是:
var number_questions = postsJSON1[i]['question'].length;
答案 1 :(得分:1)
很难确切地看到你想要做什么,但我认为你想要这个:
var number_questions = postsJSON1[i]['question'].length;
var post = "";
for (a = 0; a < number_questions; a++) {
post += postsJSON1[i]['question'][a];
}
我假设postsJSON1[i]['question']
是一个数组,因为你在循环体中对它进行处理。这就是我更改第一行以使用length
属性初始化number_questions
的原因。
顺便说一下,这段代码在功能上等同于join
;你可以在一行中做同样的事情:
var post = postsJSON1[i]['question'].join("");