js的数组的操作函数实在是太多了(比C#要多得多),遍历的方法也有好几个,这里有必要自己总结一下:
- 数组操作
方法 | 描述 | FF | N | IE |
---|---|---|---|---|
concat() | 连接两个或更多的数组,并返回结果。 | 1 | 4 | 4 |
join() | 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。 | 1 | 3 | 4 |
pop() | 删除并返回数组的最后一个元素 | 1 | 4 | 5.5 |
push() | 向数组的末尾添加一个或更多元素,并返回新的长度。 | 1 | 4 | 5.5 |
reverse() | 颠倒数组中元素的顺序。 | 1 | 3 | 4 |
shift() | 删除并返回数组的第一个元素 | 1 | 4 | 5.5 |
slice() | 从某个已有的数组返回选定的元素 | 1 | 4 | 4 |
sort() | 对数组的元素进行排序 | 1 | 3 | 4 |
splice() | 删除元素,并向数组添加新元素。 | 1 | 4 | 5.5 |
toSource() | 代表对象的源代码 | 1 | 4 | - |
toString() | 把数组转换为字符串,并返回结果。 | 1 | 3 | 4 |
toLocaleString() | 把数组转换为本地数组,并返回结果。 | 1 | 3 | 4 |
unshift() | 向数组的开头添加一个或更多元素,并返回新的长度。 | 1 | 4 | 6 |
valueOf() | 返回数组对象的原始值 | 1 | 2 | 4 |
连接:concat和join,
末尾增删:pop和push,
开头增删shift和unshift,
排序reverse和sort,
选取、删除和追加部分元素slice和splice
- 数组遍历
数组遍历总的来说,有3种方法
一、for:通用
for (var i=0;i<array.length;i++){ var a=array[i]; }或
for (var i in array){ var a=array[i]; }
二、foreach:不推荐使用,因为很多浏览器是不支持的,比如IE8以下
for (var i in array){ var a=i; }
三、$.each():参数含义如下
1、$.each(Array, function(i, value) {
this; //this指向当前元素
i; //i表示Array当前下标
value; //value表示Array当前元素
});
2、它还可以用来遍历对象:$.each(Object, function(name, value) {
this; //this指向当前属性的值
name; //name表示Object当前属性的名称
value; //value表示Object当前属性的值
});
3、遍历DOM元素:
$.each($("input:hidden"), function(i,val){
$(this).val();
alert(i);
alert(val.name);
alert(val.value);
});
alert(i);
alert(val.name);
alert(val.value);
});
遍历DOM另外一种写法:
$( " input:hidden " ).each( function (i,val){
$(this).val();
alert(i);
alert(val .name);
alert(val .value);
});
alert(i);
alert(val .name);
alert(val .value);
});
for (var i in array){ var a=array[i]; }