js Array类型

起始位置都是从数组下标0开始的

1.栈方法

push/pop

2.队列方法

unshift/shift

var array = new Array('00');
console.log(array.push('11','22','33','44'));
console.log(array);
console.log(array.pop());
var arr = new Array('00');
console.log(arr.unshift('11','22','33','44'));
console.log(arr);
console.log(arr.shift());


3.重排序

sort/reserve

这个比较函数适用于大多数数据类型

function compare(v1,v2){
if(v1 > v2){
return -1;
}else if(v1 < v2){
return 1;
}else{
return 0;
}
}

对于数值类型的比较,可以如下写:

function compare1(v1,v2){
return v1 - v2;
}
var arr = [12,21,1111,4];
arr.sort(compare);
console.log(arr);//[4, 12, 21, 1111]

4.操作方法

concat

slice

splice

看如下实例你就明白了:

var arr1 = new Array('00');
console.log(arr1.unshift('11','22','33','44'));
console.log(arr1);
//slice(起始位置,结束位置)创建一个从起始位置(包括起始位置)到结束位置(不包括结束位置)的新数组,如果参数中有一个为负数,则将负数+arr.length再重新计算,如果起始位置大于结束位置,则新数组为空
var a = arr1.slice(1,-1);
console.log(a);//["22", "33", "44"]

//splice(起始位置,要删除的个数,替换或加入的项)最强大的数组方法,可以实现插入删除替换功能。
var b = arr1.splice(2,1,'2222222222222222222');
console.log(b);
console.log(arr1);

//concat([数组或非数组]),连接到数组后面

var arr2 = new Array('00');
console.log(arr2.unshift('11','22','33','44'));
console.log(arr2);
var a = arr2.concat('12',['122'],{0:1});
console.log(a);



5.位置方法

indexOf/lastIndexOf

indexOf(要查找的项,[起始位置])从前向后查找,返回找到的第一项的索性值

lastIndexOf(要查找的项,[起始位置])从后向前查找,返回找到的第一项的索性值

6.迭代方法

every()       some()    filter()  map()    forEach()

var arr = [12,21,1111,21,9,4];
var result_every = arr.every(function(item, index, array){
if(item > 10){
return true;
}
});
var result_some = arr.some(function(item, index, array){
if(item > 10){
return true;
}
});
var result_filter = arr.filter(function(item, index, array){
if(item > 10){
return true;
}
});
var result_map = arr.map(function(item, index, array){
return item * 2;
});

var result_forEach = arr.forEach(function(item, index, array){
//操作
});

console.log(result_every);//false
console.log(result_some);//true
console.log(result_filter);//[12, 21, 1111, 21]
console.log(result_map);//[24, 42, 2222, 42, 18, 8]

只有forEach没有返回值,和普通循环一样

7.归并方法

reduce(从前向后)  reduceRight(从后向前)遍历数组

//其中prev始终是返回的那个值、cur是当前值

var arr = [1,2,3,4,5];
var sum = arr.reduce(function(prev, cur, index, array){
return prev + cur;
});
console.log(sum);//15

Array学好了吗?yeah~~~很有成就感



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值