Javascript多维数组初始化
我正在寻找用Javascript初始化多维数组的最佳方法。我更熟悉PHP,在PHP中,我不必在向其提供值之前声明数组或维度 基本上,我试着用以下格式创建一个数组Javascript多维数组初始化,javascript,arrays,multidimensional-array,Javascript,Arrays,Multidimensional Array,我正在寻找用Javascript初始化多维数组的最佳方法。我更熟悉PHP,在PHP中,我不必在向其提供值之前声明数组或维度 基本上,我试着用以下格式创建一个数组 catalogue[i]["name"]="a name"; catalogue[i]["description"]="a description"; ……等等 如果我这样做: var catalogue = new Array(); for (i=0; i<otherarray.length;i++) {
catalogue[i]["name"]="a name";
catalogue[i]["description"]="a description";
……等等
如果我这样做:
var catalogue = new Array();
for (i=0; i<otherarray.length;i++)
{
catalogue[i]['name']=otherarray[i];
}
var目录=新数组();
对于(i=0;i将其放入循环中,以创建要在其中存储值的对象:
catalog[i]={};
或catalog.push({});
您的代码如下所示:
var catalogue = new Array();
for (i=0; i<otherarray.length;i++)
{
catalogue[i] = {}; // initialization
catalogue[i]['name']=otherarray[i];
}
var目录=新数组();
对于(i=0;i将其放入循环中,以创建要在其中存储值的对象:
catalog[i]={};
或catalog.push({});
您的代码如下所示:
var catalogue = new Array();
for (i=0; i<otherarray.length;i++)
{
catalogue[i] = {}; // initialization
catalogue[i]['name']=otherarray[i];
}
var目录=新数组();
对于(i=0;ivar目录=新数组();
对于(i=0;i
或
var目录=新数组();
对于(i=0;i
var catalog=new Array();
对于(i=0;i
或
var目录=新数组();
对于(i=0;i
如果希望在Javascript中的数组中使用字符串键,则必须声明一个对象。目录
变量本身是一个数组,但该数组中的每个元素都是一个对象,具有两个键“name”和“description”。例如,此代码起作用:
var c = [1,2,3,4,5];
var n = ['one', 'two', 'three', 'four', 'five'];
var cat = [];
for (i = 0; i < c.length; i++)
{
cat[i] = {
name : n[i],
value: c[i]
};
}
如果希望在Javascript中的数组中使用字符串键,则必须声明一个对象。catalog
变量本身是一个数组,但该数组中的每个元素都是一个具有两个键“name”和“description”的对象。例如,此代码起作用:
var c = [1,2,3,4,5];
var n = ['one', 'two', 'three', 'four', 'five'];
var cat = [];
for (i = 0; i < c.length; i++)
{
cat[i] = {
name : n[i],
value: c[i]
};
}
请注意,数组在javascript中没有键,只有数字索引,所以您真正想要创建的是一个对象。请使用对象而不是数组。catalog
不是未定义的,catalog[i]
是。您可以在catalog[i]={};
前面写catalog[i]['name']=otherarray[i]
。注意数组在javascript中没有键,只有数字索引,所以你真正想要创建的是一个对象。使用对象而不是数组。catalog
不是未定义的,catalog[i]
是。你可以在catalog[i]['name']=otherarray[i]之前写catalog[i]={};
那正是我想要的,非常感谢!那正是我想要的,非常感谢!
var c = [1,2,3,4,5];
var n = ['one', 'two', 'three', 'four', 'five'];
var cat = [];
for (i = 0; i < c.length; i++)
{
cat[i] = {
name : n[i],
value: c[i]
};
}
Array[5]
-> 0 : Object
name: "one"
value: 1
-> 1 : Object
name: "two"
value: 2
...