数组构造器array的方法:不改变原数组:concat():拼接数组,合并数组slice():slice(起始位置索引,结束位置索引):从数组中提取指定元素,包括thestartandexcludingendmap():做计算会改变原来的数组:pop():删除数组的最后一个元素,并返回删除元素的值push():添加多个元素到数组的末尾并返回一个值(数组的新长度)shift():与pop相反,删除数组的第一个元素,并返回删除的元素值数组并返回一个值(数组的新长度)splice():splice(起始位置Index,删除的个数,传入新元素):添加元素,删除指定元素reverse():反转数组,会影响原数组join():数组转字符串,返回字符串遍历方法:forEach():循环every():每个元素满足测试函数返回truesome():数组中至少有一个满足测试函数,返回trueindexOf():findIndex():查找第一个满足测试函数的元素,返回具体索引find():查找第一个满足测试函数的元素,返回值filter():将所有过滤函数中返回true的数组元素放入anewarray,returnthearrayincludes():include,returnBooleanreduce():sumthearraysort():reorderingwillaffecttheoriginalarray,sortbyUnicode高级方法:flat():将多维数组转换为一维数组维数组flatMap():Array.from():将类数组转换为数组,Array.of()/fill():将一组值转换为数组数组实例copyWithin()数组去重https://juejin.im/post/6844903881500016647ES6:newsetarraydeduplication:(array.fromorspreadoperator)Array.from(newSet(arr))[...newSet(arr)]maparraydeduplicationreducededuplicationfilter+indexOf去重:filter(x,index,self)ES5:doublefor循环+拼接去重indexOf去重包括去重数组排序Array.prototype.sort()排序稳定reverse()逆序,sort()升序数组遍历:for循环:for,ForEach,for...in,for...of(ES6)iteratorIteratormap,forEach,reducesummation,filter过滤,[every,somedifference]ES6:entries(),keys()和values()数组计算Sum,averageforloop:for/forloopoptimization,forEach,for...in,for...ofES5:while,do...while,recursionES6:every,some,reduce,filter,map,eval(性能差)https://www.cnblogs.com/faithZZZ/p/7063952.htmlfor循环优化版,最优:reducefor...of循环尾递归数组求最大值最小值,并集,交集,差集数组随机多维数组转一维数组,手写实现flatarr.toString().split(','):只适用于数组arr.join().split(',')中的所有数字二维转一维:[].concat(...arr)手动实现扁平化:
