数组的方法集合

map -----函数化原数组----------深复制

在这里插入图片描述

filter —过滤原数组----------深复制

在这里插入图片描述

sort ------排序原数组----------深复制

var arr = [10, 20, 1, 2];
arr.sort(function (x, y) {
    return x - y;
});
console.log(arr); // [1, 2, 10, 20]

slice 把原数组–左闭又开 深复制

//-----------------------------
let arr = [1, 2,3];
let brr=arr.slice(1);
brr.push(4)
console.log(arr,'arr')//[ 1, 2, 3 ] 'arr'
console.log(brr,'brr')//[ 2, 3, 4 ] 'brr'
//------------------------------------
let arr = [1, 2,3,4,5,6,7];
let brr=arr.slice();
brr.push(4)
console.log(arr,'arr')//[ 1, 2, 3, 4, 5, 6, 7 ] 'arr'
console.log(brr,'brr')//[ 1, 2, 3, 4, 5, 6, 7, 4 ] 'brr'

concat 拼接原数组 深复制

//-----------------------------
let arr = [1, 2,3,4,5,6,7];
let brr=arr.concat(111111);
brr.push(4)
console.log(arr,'arr')//[ 1, 2, 3, 4, 5, 6, 7 ] 'arr'
console.log(brr,'brr')//[ 1, 2, 3, 4, 5, 6, 7, 111111, 4 ] 'brr'
//------------------------------------
let arr = [1, 2,3,4,5,6,7];
let brr=arr.concat();
brr.push(4)
console.log(arr,'arr')//[ 1, 2, 3, 4, 5, 6, 7 ] 'arr'
console.log(brr,'brr')//[ 1, 2, 3, 4, 5, 6, 7, 4 ] 'brr'

## splice    把原数组增删改 -----返回被切部分的数组
```javascript
let arr = [1, 2,3];
let brr=arr.slice(1);
brr.push(4)
console.log(arr,'arr')//[ 1, 2, 3 ] 'arr'
console.log(brr,'brr')//[ 2, 3, 4 ] 'brr'

every —

var arr = ['Apple', 'pear', 'orange'];
console.log(arr.every(function (s) {
    return s.length > 0;
})); // true, 因为每个元素都满足s.length>0

some ----------

var arr = ['Apple', '', 'orange'];
console.log(arr.some(function (s) {
    return s.length > 0;
})); // true,只要有一个满足s.length>0

forEach <==> for循环 深复制 但 不会有返回值

var arr = [10, 20, 1, 2];
var brr=arr.forEach(function (x, y) {
    return x>10;
});
console.log(arr); // [ 10, 20, 1, 2 ]
console.log(brr,'brr')//undefined 'brr'

reverse,push,pop,shift,unshift 浅复制

发布了49 篇原创文章 · 获赞 2 · 访问量 1473

猜你喜欢

转载自blog.csdn.net/formylovetm/article/details/103937320