首页 > 语言 > JavaScript > 正文

Javascript数组Array方法解读

2024-05-06 15:00:14
字体:
来源:转载
供稿:网友

接上一篇《Javascript数组Array基础介绍》,这一篇详细介绍Array的所有方法。

所有数组的方法都定义在Array.prototype上,而Array.prototype本身也是一个数组。

array.concat()

浅复制一份当前数组,并把接收到的参数附加到新数组的末尾。原数组不改变。

语法

array.concat(value1, value2, ..., valueN)
参数为需要合并的数组或非数组值

var arr1 = [1, 2, 3];var obj = {animal : 'monkey'};var arr2 = arr1.concat([4, 5, 6], obj, [7, 8, 9]);// arr1 [1, 2, 3]// arr2 [1, 2, 3, 4, 5, 6, {animal : 'monkey'}, 7, 8, 9]obj.animal = 'tiger';// [1, 2, 3, 4, 5, 6, {animal : 'tiger'}, 7, 8, 9]

可以合并数组或非数组值,但是要注意如果包含对象,对象还是引用原来的对象。

array.join()

返回一个将数组所有元素用分隔符拼接成的字符串,默认分隔符为逗号。

语法

array.join(seperator)
参数为分割符

var arr1 = [1, 2, 3];var str = arr1.join(); // 1,2,3str = arr1.join('#'); // 1#2#3

当将大量字符串片段组装时,join方法比+元素运算符要快。

利用new Array(3)将生成一个长度为三的空数组,同时结合join()方法,可以实现重复某段字符串。

var str = new Array(3).join('-+'); // -+-+

重复的次数就是数组长度减一,因为字符串是分隔符。

由于数组本身是对象,拥有toString()方法,利用它也能实现将数组拼接成一个字符串,只不过分隔符只能是逗号了。

var arr1 = [1, 2, 3];arr1.toString(); // 1,2,3

实际上它会先调用每一个元素的toString()方法。

array.push()

把一个或多个参数附加在数组末尾,返回数组长度。改变数组自身。

语法

array.push(value1, value2, ..., valueN);
实例

var arr1 = [1, 2, 3];var len = arr1.push(4, 5);console.log(len); // 5console.log(arr1); // [1, 2, 3, 4, 5]

另一种方法也可以实现在数组末尾插入值。

arr1[arr1.length] = 6; // [1, 2, 3, 4, 5, 6]  array.pop()

将数组最后一项删除,并返回删除项。改变数组自身。

var arr1 = [1, 2, 3];arr.pop(); // [1, 2] 返回 3

如果数组为空,返回undefined。

array.unshift()

把一个或多个参数插入到数组头部,返回数组长度。改变数组自身。

var arr1 = [1, 2, 3];var len = arr1.unshift(4, 5);console.log(len); // 5console.log(arr1); // [4, 5, 1, 2, 3]

array.shift()

将数组的第一项删除,并返回删除项。改变数组自身。

var arr1 = [1, 2, 3];arr.shift(); // [2, 3] 返回 1

如果数组为空,返回undefined。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选