js的数组方法整理(26)
<p>一、数组有哪些方法?</p><p>1.数组创建与初始化</p>
<p>Array()构造函数:用于创建新数组</p>
<pre class="language-armasm highlighter-hljs"><code>const arr1 = new Array() //创建空数组
const arr2 = new Array(5) //创建包含个空位的数组
const arr3 = new Array(1,2,3) //创建包含元素1,2,3的数组</code></pre>
<p>Array.of():创建包含任意数量参数的新数组</p>
<pre class="language-armasm highlighter-hljs"><code>const arr = Array.of(1, 2, 3); // </code></pre>
<p>Array.from():从类数组对象或可迭代的对象创建新数组</p>
<pre class="language-armasm highlighter-hljs"><code>const str = 'hello';
const arr = Array.from(str); // ['h', 'e', 'l', 'l', 'o']</code></pre>
<p>2.数组元素操作</p>
<p>push():在数组末尾添加一个或多个元素,并返回新的长度</p>
<div class="cnblogs_code">
<pre>const arr = ;
const newLength </span>= arr.push(4, 5); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> arr 变为 ,newLength 为 5</span></pre>
</div>
<p>pop():移除数组的最后一个元素,并返回该元素</p>
<div class="cnblogs_code">
<pre>const arr = ;
const lastElement </span>= arr.pop(); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> arr 变为 ,lastElement 为 3</span></pre>
</div>
<p>unshift():在数组开头添加一个或多个元素,并返回新的长度</p>
<div class="cnblogs_code">
<pre>const arr = ;
const newLength </span>= arr.unshift(0); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> arr 变为 ,newLength 为 4</span></pre>
</div>
<p>shift():移除数组的第一个元素,并返回该元素</p>
<div class="cnblogs_code">
<pre>const arr = ;
const firstElement </span>= arr.shift(); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> arr 变为 ,firstElement 为 1</span></pre>
</div>
<p>splice():可用于添加、删除或替换数组中的元素。splice()会改变原数组。</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">
数组.splice(n,m,x):对数组进行增/删/改操作
@params:
n:从索引n开始(必填)
m:向后截取m个元素,没有填写则默认截取到数组末尾(非必填)。
x:代替截取掉的部分(非必填)
@return:将截取到的部分以新数组的方式返回
</span><span style="color: rgba(0, 128, 0, 1)">*/</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">增:</span>
let arr = ,
newArr </span>= arr.splice(arr.length-1,0,7); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">从数组末尾开始向后截取0个元素,并在此插入新元素7</span>
console.log(newArr,arr)<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> => [],</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">删:</span>
let arr2 = ,
newArr2 </span>= arr2.splice(0,1);<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">从索引0开始向后截取1个元素</span>
console.log(newArr2,arr2)<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> => ,</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">改:</span>
let arr3 = ,
newArr3 </span>= arr3.splice(0,1,0.5)<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">从索引0开始向后截取1个元素,并在此插入元素0.5</span>
console.log(newArr3,arr3)<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> => ,</span></pre>
</div>
<p>slice():返回一个新的数组,包含从开始到结束(不包括结束)的元素</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">
数组.slice(n,m):查询数组
@params:
n:从索引n开始(必填)
m:查询到索引m为止,不包含m,如果m不填或大于arr.length,默认查询到末尾(非必填)
@return:将查找到的元素以新数组的方式返回,如果没有查找到,返回空数组
</span><span style="color: rgba(0, 128, 0, 1)">*/</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">1.当n和m都为正整数:</span>
let arr = ,
newArr </span>= arr.slice(0,arr.length);<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">从索引0开始查询到数组末尾的后一项(复制数组)</span>
console.log(newArr,arr)<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> => ,</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">2.当n和m为小数时,会先通过parseInt转换为整数在进行查询操作</span>
let arr2 = ,
newArr2 </span>= arr2.slice(1.9,2.1);<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">从索引1开始查询到索引为2的元素</span>
console.log(newArr2,arr2)<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> => ,</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">3.当n是负数时,m不能大于n 否则返回空数组;表示从数组的末尾开始查找,数组最后一项索引为-1,越往前越小(原正数索引-arr.length=当前的负数索引)</span>
let arr3 = ,
newArr3 </span>= arr3.slice(-3,-1);<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">从索引-2开始向前查找到索引为-1的元素</span>
console.log(newArr3,arr3);<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> => ,,</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">4.当n或m不是有效数字时,先通过parseInt转换为有效数字,转换为NaN则默认为0</span>
let arr4 = ,
newArr4 </span>= arr4.slice('1.9','哈哈哈');<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">从索引1开始向后查询到索引为0的元素,返回空数组</span>
console.log(newArr4,arr4)<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> => [],</span>
<span style="color: rgba(0, 0, 0, 1)">
let arr5 </span>= ,
newArr5 </span>= arr4.slice('1.9','3.1');<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">从索引1开始向后查询到索引为3的元素,返回空数组</span>
console.log(newArr4,arr4)<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> => ,,</span></pre>
</div>
<p>3.数组查找与过滤</p>
<p>indexOf():返回指定元素在数组中第一次出现的索引,如果不存在则返回-1</p>
<div class="cnblogs_code">
<pre>const arr = ;
const index </span>= arr.indexOf(2); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> index 为 1</span></pre>
</div>
<p>lastIndexOf():返回指定元素在数组中最后一次出现的索引,如果不存在则返回-1</p>
<div class="cnblogs_code">
<pre>const arr = ;
const lastIndex </span>= arr.lastIndexOf(2); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> lastIndex 为 3</span></pre>
</div>
<p>includes():判断数组是否包含指定元素,返回布尔值</p>
<div class="cnblogs_code">
<pre>const arr = ;
const hasTwo </span>= arr.includes(2); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">为 true</span></pre>
</div>
<p>find():数组的循环,查找符合条件的值,并打断循环返回找到的值</p>
<div class="cnblogs_code">
<pre>let arr = ['张三','李四','王五','马六'<span style="color: rgba(0, 0, 0, 1)">];
let str </span>= arr.find(item => item == '李四'<span style="color: rgba(0, 0, 0, 1)">);
console.log(str); </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> '李四'</span></pre>
</div>
<p>findIndex():返回数组中满足测试的函数的第一个索引,否则返回-1</p>
<div class="cnblogs_code">
<pre>const arr = ;
const foundIndex </span>= arr.findIndex(item => item > 3); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> foundIndex 为 3</span></pre>
</div>
<p>filter():</p>
<p>(1) 同forEach功能;</p>
<p>(2) filter的回调函数需要返回布尔值,当为true时,将本次数组的数据返回给filter,最后filter将所有回调函数的返回值组成新数组返回(此功能可理解为“过滤”)</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 注意:filter(callback);callback默认有三个参数,分别为value,index,self。 </span>
let arr = ;
let arr1 </span>= arr.filter((item,index,self)=><span style="color: rgba(0, 0, 0, 1)">{
console.log(item) </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> 1,2,3,4,5,6 </span>
console.log(index) <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> 0,1,2,3,4,5 </span>
console.log(self) <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> </span>
<span style="color: rgba(0, 0, 255, 1)">return</span> item > 3<span style="color: rgba(0, 0, 0, 1)">
})
console.log(arr1) </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> </span></pre>
</div>
<p>every():判断数组中是否每一项都满足条件,只有所有项都满足条件,才返回true</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 注意: every()接收一个回调函数作为参数,这个回调函数需要有返回值,</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> every(callback);callback默认有三个参数,分别为value,index,self。 </span>
let arr = ;
let bool </span>= arr.every(item => item > 0<span style="color: rgba(0, 0, 0, 1)">);
console.log(bool); </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> true; </span>
<span style="color: rgba(0, 0, 0, 1)">
let bool </span>= arr.every(item => item > 3<span style="color: rgba(0, 0, 0, 1)">);
console.log(bool); </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> false;</span></pre>
</div>
<p>some():判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true,否则返回false</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 注意: some()接收一个回调函数作为参数,这个回调函数需要有返回值,</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> some(callback);callback默认有三个参数,分别为value,index,self。 </span>
<span style="color: rgba(0, 0, 0, 1)">
let arr </span>= ;
let bool </span>= arr.some(item => item > 3<span style="color: rgba(0, 0, 0, 1)">);
console.log(bool) </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> true; </span>
<span style="color: rgba(0, 0, 0, 1)">
let bool </span>= arr.some(item => item > 6<span style="color: rgba(0, 0, 0, 1)">);
console.log(bool) </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> false;</span></pre>
</div>
<p> </p>
<p>4.数组排序与反转</p>
<p>sort():对数组的元素进行排序,并返回排序后的数组。默认按字符串unicode编码排序</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">
数组.sort(fn => fn()):将数组按照指定的顺序进行排序
@params:
函数(可有可无),如果需要实现多位数正常排序,需要传递函数,并使返回值为a-b(升序)或者b-a(降序),属于冒泡排序机制
@return:
排序后的新数组
</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
let arr </span>= ,
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">升序:</span>
newArr = arr.sort((a,b) => (a-<span style="color: rgba(0, 0, 0, 1)">b));
console.log(newArr,arr)</span></pre>
</div>
<p>reverse():反转数组中元素的顺序,会改变原数组</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">
数组.reverse():将数组的元素倒过来排序
@params:
@return:重新排序后的新数组
</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
let arr </span>= ,
newArr </span>=<span style="color: rgba(0, 0, 0, 1)"> arr.reverse();
console.log(newArr,arr)</span></pre>
</div>
<p>5.数组迭代与映射</p>
<p>forEach():遍历数组,没有返回值</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 注意:forEach(callback);callback默认有三个参数,</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 分别为value(遍历到的数组的数据),index(对应的索引),self(数组自身)。 </span>
<span style="color: rgba(0, 0, 0, 1)">
let arr </span>= ['张三','李四','王五','马六'<span style="color: rgba(0, 0, 0, 1)">]
let a </span>= arr.forEach((item,index,self)=><span style="color: rgba(0, 0, 0, 1)">{
console.log(item </span>+ "--" + index + "--" + (arr ===<span style="color: rgba(0, 0, 0, 1)"> self));
})
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 打印结果为: </span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 张三--0--true </span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 李四--1--true </span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 王五--2--true </span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 马六--3--true </span>
console.log(a); <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> undefined---forEach没有返回值 //该方法为遍历方法,不会修改原数组</span></pre>
</div>
<p>map():map的回调函数会将执行结果返回,最后将所有回调函数的返回值组成新数组返回,同forEach</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">注意:map(callback);callback默认有三个参数,</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 分别为value,index,self。</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 跟上面的forEach()的参数一样 </span>
let arr = ['张三','李四','王五','马六'<span style="color: rgba(0, 0, 0, 1)">];
let arr1 </span>= arr.map(item =><span style="color: rgba(0, 0, 0, 1)"> {
</span><span style="color: rgba(0, 0, 255, 1)">return</span> '你好:'+<span style="color: rgba(0, 0, 0, 1)">item
})
console.log(arr1) </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> ['你好:张三', '你好:李四', '你好:王五', '你好:马六']<br></span></pre>
</div>
<p>?reduce():数组的第一项开始,逐个遍历到最后,迭代数组的所有项,然后构建一个最终返回的值</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 注意: 参数:reduce()接收一个或两个参数:</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 第一个是回调函数,表示在数组的每一项上调用的函数;</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 第二个参数(可选的)作为归并的初始值,被回调函数第一次执行时的第一个参数接收。</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> reduce(callback,initial);</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> callback默认有四个参数,分别为prev,now,index,self。</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> callback返回的任何值都会作为下一次执行的第一个参数。 </span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 如果initial参数被省略,那么第一次迭代发生在数组的第二项上,</span><span style="color: rgba(0, 128, 0, 1)">
//</span><span style="color: rgba(0, 128, 0, 1)"> 因此callback的第一个参数是数组的第一项,第二个参数就是数组的第二项。 </span>
<span style="color: rgba(0, 0, 0, 1)">
let arr </span>= ;
let sum </span>= arr.reduce((prev,now) => prev+<span style="color: rgba(0, 0, 0, 1)">now)
console.log(sum); </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> -> 150; </span>
<span style="color: rgba(0, 0, 0, 1)">
let sum </span>= arr.reduce((prev,now) => prev+now,110<span style="color: rgba(0, 0, 0, 1)">)
console.log(sum) </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 260</span></pre>
</div>
<p>6.数组合并与扁平化</p>
<p>concat():合并两个或多个数组,返回一个新数组</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">
数组.concat(): 在指定数组后面将多个元素拼接成一个新数组
@params:多个任意类型值
@return:返回拼接后的新数组
</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
let arr </span>= ,
arr2 </span>= ,
newArr </span>= arr.concat(arr2,'morning',{name:"Zack"<span style="color: rgba(0, 0, 0, 1)">})
console.log(newArr,arr,arr2)</span></pre>
</div>
<p>flat():创建一个新数组,将所有子数组元素递归连接到该数组中。</p>
<p>注意事项<br>如果原数组的元素不是数组(即没有子数组),则 flat() 方法将返回原数组的浅拷贝。<br>如果指定的深度小于 1,则 flat() 方法将不会进行任何扁平化操作,并返回原数组的浅拷贝。<br>如果数组中的某个元素是空数组,则扁平化时该空数组会被忽略(即不会作为结果数组的元素)。<br>flat() 方法不会改变原数组,而是返回一个新的扁平化后的数组</p>
<div class="cnblogs_code">
<pre>let arr = , ]];
</span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 不指定深度,默认深度为 1</span>
let flatArr1 =<span style="color: rgba(0, 0, 0, 1)"> arr.flat();
console.log(flatArr1); </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 输出: ]]</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 指定深度为 2</span>
let flatArr2 = arr.flat(2<span style="color: rgba(0, 0, 0, 1)">);
console.log(flatArr2); </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 输出: ]</span>
<span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 指定深度为 Infinity,完全扁平化</span>
let flatArr3 =<span style="color: rgba(0, 0, 0, 1)"> arr.flat(Infinity);
console.log(flatArr3); </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 输出: </span></pre>
</div>
<p>7.数组转字符串</p>
<p>toString():不改变原数组</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">
数组.toString:将数组转换为字符串
@params:
@return:转换后的字符串
</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
let arr </span>= ,
newArr </span>=<span style="color: rgba(0, 0, 0, 1)"> arr.toString();<br></span></pre>
</div>
<p>join():不改变原数组</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">/*</span><span style="color: rgba(0, 128, 0, 1)">
数组.join():将数组以指定分隔符的形式分隔成字符串
@params:指定的分隔符(字符串格式)
@return:转换后的字符串
</span><span style="color: rgba(0, 128, 0, 1)">*/</span><span style="color: rgba(0, 0, 0, 1)">
let arr </span>= ,
newArr </span>= arr.join('|'<span style="color: rgba(0, 0, 0, 1)">);
console.log(newArr,arr) </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 0|1|2|3|4|5,</span></pre>
</div>
<p>二、其中比较常用的?</p>
<ul class="auto-hide-last-sibling-br">
<li><code>push()</code>:在数组末尾添加元素。</li>
<li><code>pop()</code>:移除数组最后一个元素。</li>
<li><code>map()</code>:对数组元素进行映射转换。</li>
<li><code>filter()</code>:过滤数组元素。</li>
<li><code>reduce()</code>:对数组元素进行累加或汇总。</li>
<li><code>forEach()</code>:遍历数组元素。</li>
<li><code>sort()</code>:对数组元素进行排序。</li>
<li><code>includes()</code>:判断数组是否包含指定元素</li>
</ul>
<p>三、其中会改变原数组的方法</p>
<p>push(),pop(),shift(),unshift(),splice(),sort(),reverse()</p>
<p> </p><br><br>
来源:https://www.cnblogs.com/lululalu/p/18821741
頁:
[1]