js-ecma3

##数组操作方法

join方法

var arr = [1,2,56 ,5,69,8,4,9];
var str = '';
str = arr.join('/'); //分隔符自己指定,新打出的字符串是分隔符代替了逗号
console.log(str);//输出:1/2/56/5/69/8/4/9

pop方法

var arr = [1,2,56 ,5,69,8,4,9];    
arr2 = arr.pop();//pop方法删除数组最后一个元素并返回删除的最后一个值,如果数组已经为空,则返回undefined
console.log(arr2);//输出:9

shift方法

var arr = [1,2,56 ,5,69,8,4,9];
console.log(arr.shift());//输出:1 类似pop方法,只不过是返回第一个值,两个函数都没有参数

push方法

var arr = [1,2,56 ,5,69,8,4,9];
console.log(arr.push('fuck','you','nani'),arr);//输出:11 [1, 2, 56, 5, 69, 8, 4, 9, "fuck", "you", "nani"]
返回添加值后的Array长度,并不创建新数组

sort方法

var arr = [1,2,56 ,5,69,8,4,9];
function fn (a,b) {

return a-b||b-a;//a-b输出从小到大的排序,b-a输出从大到小排序

}
console.log(arr.sort(fn));//输出:[1, 2, 4, 5, 8, 9, 56, 69]参数必须是一个函数,函数可以写在外面,也可以直接匿名函数
console.log(arr.sort(fn).reverse())//输出:[69, 56, 9, 8, 5, 4, 2, 1]//反序输出

slice方法和splice方法

var arr = ['a','b',2,true,{},6];
console.log(arr.slice(-1))// 输出:[6]  当值为负值的话只提取最后一个值,不会对愿数组进行修改
var arr2;
arr2 = arr.splice(2,4,1,2,'564')//输出:[2, true, Object, 6] ["a", "b", 1, 2, "564"]     (*startposition起始位置,deleteCount删除值的个数,item添加的项目)
console.log(arr2,arr)//删除,替换,插入  返回被删除的元素

forEach方法

arr.forEach(function(item,index,arr){//第三个参数是原数组,第二个参数是下标,第一个参数是指下标对应的值,对ie678不支持
    console.log(item,index,arr);
}) //输出下面的列阵:
1   0   [1, 2, 56, 5, 69, 8, 4, 9]
2   1   [1, 2, 56, 5, 69, 8, 4, 9]
56  2   [1, 2, 56, 5, 69, 8, 4, 9]
5   3   [1, 2, 56, 5, 69, 8, 4, 9]
69  4   [1, 2, 56, 5, 69, 8, 4, 9]
8   5   [1, 2, 56, 5, 69, 8, 4, 9]
4   6   [1, 2, 56, 5, 69, 8, 4, 9]
9   7   [1, 2, 56, 5, 69, 8, 4, 9]