for (var ij = 0 ij <= 10 ij++) {
arr[ij] = new Array()
if (ij < 10) {
var idfz1, cs
cs = "0"
idfz1 = cs + ij
}
if (ij >= 10) {
idfz1 = ij
}
for (var j = 0 j <= 3 j++) {
if (j < 10) {
var idfz2, cs1
cs1 = "0"
idfz2 = cs1 + j
}
if (j >= 10) {
idfz2 = j
}
var id1 = idfz1 + idfz2
//alert("id1:" + id1)
arr[ij][j] = id1
}
}
alert(JSON.stringify(arr))
方法一:
定义已知长度的二维数组,可直接定义并且初始化
var _TheArray = [["0-1","0-2"],["1-1","1-2"],["2-1","2-2"]]
方法二:
定义未知长度的二维数组
var tArray = new Array()//先声明一维数组
for(var k=0k<ik++) //一维数组长度为i,i为变量,可以根据实际情况改变
{
tArray[k]=new Array() //声明二维,每一个一维数组里面的一个元素都是一个数组
for(var j=0j<pj++) //一维数组里面每个元素数组可以包含的数量p,p也是一个变量
{
tArray[k][j]="1" //这里将变量初始化,我这边统一初始化为1
}
}
扩展资料:
JavaScript多维数组的创建:
<script>
var allarray=new Array()
var res=""
function loaddata()
{
for(var i=0i<3i++)
{
var starth=i*200
var strarw=i*200
var endh=(i+1)*200
var endw=(i+1)*200
allarray[i]=new Array()
allarray[i][0]=new Array()
allarray[i][1]=new Array()
allarray[i][0][0]=starth
allarray[i][0][1]=strarw
allarray[i][1][0]=endh
allarray[i][1][1]=endw
}
for(var i=0i<allarray.lengthi++)
{
var sh=allarray[i][0][0]
var sw=allarray[i][0][1]
var eh=allarray[i][1][0]
var ew=allarray[i][1][1]
res+="第"+i+"个坐标的开始坐标是:"+sh+","+sw+"结束坐标是:"+eh+","+ew+"<br/>"
}
document.getElementById("dv").innerHTML=res
}
</script>。
参考资料来源:MDN web docs-Array
原因:
思路没有问题,但对一维和二维的使用上有些偏差,特别是push
var plist={"productName":pds[j].value,"rackRate":pds[j].value}//这句话没有问题,就是一个生成一个对象。
----------------------------------
products[i][j].push(plist)//这里就有问题了,因为你说的是二维,products[i][j]就代表二维里面的具体内容,内容在push,那就是内容还是数组,也就是3维了,更何况三维没有new的话,这里肯定报错。因此这里需要改成products[i][j]=plist或者products[i].push(plist)
----------------------------------
alert(products[i][j].productName)//这句话没有问题
修改:
根据上面其中一种方法修改后
<script>var pds=[]
var products=[]
pds.push({"value":"1"})
pds.push({"value":"2"})
pds.push({"value":"3"})
for(var i=0i<1i++){
products[i] = []//申明二维数组
for(var j=0j<pds.lengthj++){
var plist={"productName":pds[j].value,"rackRate":pds[j].value}
products[i].push(plist)
}
}
alert(products[0][0].productName)
</script>