<>创建

var a = [1,2,3]
var a = Array()

<>增

push():在末尾增加一个元素
unshift():在首部增加一个元素

ES6: fill() 填充数组
参数:
第一个元素(必须): 要填充数组的值
第二个元素(可选): 填充的开始位置,默认值为0
第三个元素(可选):填充的结束位置,默认是为this.length

<>删

pop(): 删除末尾的元素
shift():删除第一个元素
delete:删除指定元素,但是数组长度

<>一个方法实现增删

splice()

* index:必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
* howmany:必需。要删除的项目数量。如果设置为 0,则不会删除项目。
* item1, …, itemX: 可选。向数组添加的新项目。
*
<>查

indexOf(): 查找数组是否存在某个元素,返回下标
lastIndexOf() :查找指定元素在数组中的最后一个位置
includes() :查找数组是否包含某个元素 返回布尔
find() :用于找出第一个符合条件的数组成员

<>遍历

1.forEach():
array.forEach(function(currentValue, index, arr), thisValue)

* currentValue(必须),数组当前元素的值
* index(可选), 当前元素的索引值
* arr(可选),数组对象本身
* 无法中途退出循环,只能用return退出本次回调,进行下一次回调。
* 它总是返回 undefined值,即使你return了一个值。
* ES6 提供三个新的方法——entries(),keys()和values()——用于遍历数组。
keys()是对键名的遍历、values()是对键值的遍历,entries()是对键值对的遍历。 for (let index of ['a', 'b'].
keys()) { console.log(index); } // 0 // 1 for (let elem of ['a', 'b'].values())
{ console.log(elem); } // 'a' // 'b' for (let [index, elem] of ['a', 'b'].
entries()) { console.log(index, elem); } // 0 "a" // 1 "b"
<>排序

sort()
sort要正确排序必须配合一个排序函数
function arrySort(a,b) { return a-b }
<>颠倒顺序

reserse()
返回值为undefind

<>合并

1.[…arr1, …arr2, …arr3]
2.concat()

<>数组转字符串

1.join():用指定分隔符分割连接
let a= ['hello','world']; let str=a.join(); // 'hello,world' let str2=a.join(
'+'); // 'hello+world'
2.toString() 和join相同但是不能指定分隔符

<>字符串转数组

split()方法与join()方法正好相反
它有两个参数:

* separator 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
* howmany
可选。该参数可指定返回的数组的最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
如果用 “” 中间没有分号,作为分隔符,每个字符都会被分割开
<>数组拷贝

1.const a2 = […a1];

2.深拷贝

* 利用concat let arr = [1,2,3]; let arr2 = [].concat(arr);
* 利用JSON深拷贝 let obj = { a:1, b:2, c:undefind, fun:function () { console.log(
"function") } }; let obj2 = JSON.parse(JOSN.Stringify(obj)); console.log(obj2);
//object:[a:1,b:2] //用JSON拷贝会忽略undefined和function
<>数组降维

flat() 方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。
flat(1) 表示拉平一层,Infinity关键字可以将所有层拉平

<>filter()方法

filter方法可以实现数组的筛选

filter有三个参数:
element:数组中的元素
index:参数位置
array:数组本身

用法:
var a = [1,2,2, ,3,4,4,5]; // 只写一个参数则时element var b = a.filter(function (num) {
return num && num.trim(); //trim()会去除字符串两端的空格 }) //最后会得到去除空格的字符串 var c = a.
filter(function (num,index,array){ return array.indexOf(num) === index; }) //
这样就可以巧妙的去除重复元素,原理是indexOf会返回元素第一次出现的位置,和index进行比较就可以得出是不是重复的
<>ES6的set数组去重方法

结果是返回一个新数组
let array = [1, 1, 1, 1, 2, 3, 4, 4, 5, 3]; let set = new Set(array); console.
log(set); // => Set {1, 2, 3, 4, 5}

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信