我有以下数组
var a = ["Banana/hgd/kjjkds", "Orange/kldj/kdl",
"Apple/jlds/ldks", "Mango/dsfj/dskj"]
现在我想按如下方式重新创建它并进行输出
{
"a1" : "Banana",
"a2" : "hgd",
"a3" : "kjjkds"
}
{
"a1" : "Orange",
"a2" : "kldj",
"a3" : "kdl"
}
{
"a1" : "Apple",
"a2" : "jlds",
"a3" : "ldks"
}
{
"a1" : "Mango",
"a2" : "dsfj",
"a3" : "dskj"
}
我尝试了以下方法,但没有成功:
var b = [];
for (var i = 0; i< a.length; i++) {
b['a1'] = a[i].split("/")[0];
b['a2'] = a[i].split("/")[1];
b['a3'] = a[i].split("/")[2];
console.log(b);
b.push(b);
}
控制台打印所有创建的数组,但数组 b 只显示最后一个。我怎样才能让它工作?请帮忙。
最佳答案
试试这个:
var spl, b = [];
for (var i = 0, len = a.length; i < len; i++) {
spl = a[i].split("/"); /* execute split() just once */
b[i] = {
'a1': spl[0],
'a2': spl[1],
'a3': spl[2]
}
}
console.log(b);
关于javascript - 创建一个数组的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12145320/