这两天做项目时,要通过js传递一个带有字符串键名的二维数组,可是传递到后台,却得到了false,使用了很多种方法都不行,今天特地来介绍一下:js 数组初始化问题;
以及Ajax下传递带有字符串键名的数组如何操作
一维数组:
一维数组可以使用数字,字符串做建名。
var data = [];//不知道个数
var data = new Array(); //不知道个数
如果知道个数,具体数值可以用:
var data = new Array(1);
data['a'] = 'a';
或者
var data= ['a'];
二维数组:
二维数组不支持字符串键名。
一:
var data = [];
data.push(['a']);
或
var data_1 = ['a'];
data[0]=data_1;
二:
var data=new Array();
for(var i=0;i<2;i++){
data[i]=new Array();
for(var j=0;j<2;j++){
data[i][j]=1;
}
提醒:
在使用Ajax传递数据时,js数组必须是数字键名。
如果要使用字符串做建名,要通过对象的形式:如下:
var data ={
'a':{'id':1,'url':h}
};