多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
2、合并数组 ~~~ var a = [1, 2, 3]; var b = [4, 5, 6]; Array.prototype.push.apply(a, b) // 或者 a.push.apply(a, b) // 上面两种写法等同于 a.push(4, 5, 6) a // [1, 2, 3, 4, 5, 6] ~~~ 3、<span style="color: #c7254e;">push()</span>:向数组末尾添加一个或多个元素并返回<span style="color: #c7254e;">length</span>。会改变原数组。 4、<span style="color: #c7254e;">pop()</span>:删除数组的最后一个元素,并返回该元素。会改变原数组。 4.1、<span style="color: #c7254e;">shift()</span>:用于删除数组的第一个元素,并返回该元素。会改变原数组。 4.2、<span style="color: #c7254e;">unshift()</span>:用于在数组的第一个位置添加元素,并返回添加新元素后的数组长度。注意,该方法会改变原数组。 5、<span style="color: #c7254e;">join()</span>:以参数作为分隔符,将所有数组成员组成一个字符串返回。如果不提供参数,默认用逗号分隔。 ~~~ var a = [1, 2, 3, 4]; a.join(' ') // '1 2 3 4' a.join(' | ') // "1 | 2 | 3 | 4" a.join() // "1,2,3,4" ~~~ 通过<span style="color: #c7254e;">call</span>方法,这个方法也可以用于字符串。 ~~~ Array.prototype.join.call('hello', '-') // "h-e-l-l-o" ~~~ 6、<span style="color: #c7254e;">concat()</span>:用于多个数组的合并。它将新数组的成员,添加到原数组的尾部,然后返回一个新数组,原数组不变。 ~~~ [1, 2, 3].concat(4, 5, 6) // [1, 2, 3, 4, 5, 6] // 等同于 [1, 2, 3].concat(4, [5, 6]) [1, 2, 3].concat([4], [5, 6]) ~~~ 7、<span style="color: #c7254e;">reverse()</span>:用于颠倒数组中元素的顺序,返回改变后的数组。注意,该方法将改变原数组。 ~~~ var arr = [1,2,3]; arr.reverse(); // [3,2,1] ~~~ 8、<span style="color: #c7254e;">slice()</span>:用于提取原数组的一部分,返回一个新数组,原数组不变。 它的第一个参数为起始位置(从0开始),第二个参数为终止位置(但该位置的元素本身不包括在内)。如果省略第二个参数,则一直返回到原数组的最后一个成员。 ~~~ // 格式 arr.slice(start_index, upto_index); // 用法 var a = ['a', 'b', 'c']; a.slice(0) // ["a", "b", "c"] a.slice(1) // ["b", "c"] a.slice(1, 2) // ["b"] a.slice(2, 6) // ["c"] a.slice() // ["a", "b", "c"] ~~~ 如果<span style="color: #c7254e;">slice</span>方法的参数是负数,则表示倒数计算的位置。 ~~~ var a = ['a', 'b', 'c']; a.slice(-2) // ["b", "c"] a.slice(-2, -1) // ["b"] ~~~ 9、<span style="color: #c7254e;">splice()</span>:<span style="color: #c7254e;">splice</span>方法用于删除原数组的一部分成员,并可以在被删除的位置添加入新的数组成员,返回值是被删除的元素。注意,该方法会改变原数组。 <span style="color: #c7254e;">splice</span>的第一个参数是删除的起始位置,第二个参数是被删除的元素个数。如果后面还有更多的参数,则表示这些就是要被插入数组的新元素。 ~~~ // 格式 arr.splice(index, count_to_remove, addElement1, addElement2, ...); // 用法 var a = ['a', 'b', 'c', 'd', 'e', 'f']; a.splice(4, 2) // ["e", "f"] a // ["a", "b", "c", "d"] ~~~ 上面代码从原数组4号位置,删除了两个数组成员。 ~~~ var a = ['a', 'b', 'c', 'd', 'e', 'f']; a.splice(4, 2, 1, 2) // ["e", "f"] a // ["a", "b", "c", "d", 1, 2] ~~~ 上面代码除了删除成员,还插入了两个新成员。 起始位置如果是负数,就表示从倒数位置开始删除。 ~~~ var a = ['a', 'b', 'c', 'd', 'e', 'f']; a.splice(-4, 2) // ["c", "d"] ~~~ 上面代码表示,从倒数第四个位置c开始删除两个成员。 如果只是单纯地插入元素,splice方法的第二个参数可以设为0。 ~~~ var a = [1, 1, 1]; a.splice(1, 0, 2) // [] a // [1, 2, 1, 1] ~~~ 如果只提供第一个参数,等同于将原数组在指定位置拆分成两个数组。 ~~~ var a = [1, 2, 3, 4]; a.splice(2) // [3, 4] a // [1, 2] ~~~