js之数组
push()
该方法可以向数组的末尾添加一个或多个元素,并返回数组的新长度
例:var result = arr.push("唐僧","蜘蛛精","白骨精","玉兔精");//result=4
pop()
删除数组的最后一个元素,并返回
例:result = arr.pop();//result = "玉兔精"
unshift()
向数组开头添加一个或多个元素,返回长度
例:result = arr.unshift("牛魔王","二郎神");//result= 5
shift()
从数组前面删除一个元素,并返回
例:result = arr.shift(); //result= “牛魔王”
foreach()
回调函数
数组中有几个元素就会执行几次
以实参的形式传递进来,我们可以定义形参,来读取这些内容
浏览器会在回调函数中传递三个参数,
第一个参数,就是当前正在遍历的元素
第二个参数,就是当前正在遍历的元素的索引
第三个参数,就是正在遍历的数组
例:
arr.forEach(function(value,index,obj){
console.log("value = " + value);
console.log("index = " + index);
console.log("obj = " + obj);
});
slice()
用来从数组提取指定元素
参数:
1.截取开始的位置索引
2.截取结束的位置索引
第二个参数可以省略不写
索引可以传递一个负值,如果传递一个负值,则从后往前计算。
-1:表示倒数第一个。
例:var copy = arr.slice(-2,-1);//copy=“蜘蛛精”
splice()
可以删除数组中的指定元素
使用splice()会影响到原数组,并将删除的元素返回
参数:
第一个参数:表示开始位置的索引
第二个参数:表示删除的数量
第三个及以后:
可以传递一些新元素,这些元素将会自动插入到开始位置索引前边
例:result = arr.splice(1,0,"嫦娥","玉兔");//result=“”
concat()
可以连接多个数组,并将新的数组返回,不影响原数组
例:var arr = ["孙悟空","猪八戒","沙和尚"];
var arr2 = ["白骨","玉兔","蜘蛛"];
var result = arr.concat(arr2,"二郎神");//result=“孙悟空,猪八戒,沙和尚,白骨,玉兔,蜘蛛”
join()
该方法可以将数组转换为一个字符串
不会改变原数组,将字符串返回
如果不指定连接符,默认使用,作为连接符
例:result = arr.join("hh");//result = “孙悟空hh猪八戒hh沙和尚”
reverse()
该方法反转数组,改变原数组。
例:result = arr.reverse();//result=“沙和尚,猪八戒,孙悟空”
sort()
默认按照unicode编码进行排序
可以自己来指定排序规则
可以在sort()添加一个回调函数,来指定排序规则
浏览器将会分别使用数组中的元素作为实参去调用回调函数,
使用哪个元素调用不确定,但是a一定在b前边
浏览器根据回调函数的返回值决定元素位置
>0,交换
<0,不变
=0,不变
例:arr = [5,4];
arr.sort(function(a,b){
return a-b;
});