内置对象Array-2
pop()
原文:MDN - pop()
功能:
pop()
方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。语法:
arr.pop()
:返回从数组中删除的元素
返回值:一个新数组,每个元素都是回调函数的结果。
代码:
let arr = [1, 2, 3, 4];for(let i = 0, time = 1; i < arr.length; time ) { console.log(`------\n第 ${time} 次遍历:`); console.log(arr.pop()); console.log(arr);}
push()
原文:MDN - push()
功能:
push()
方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。语法:
arr.push(element)
element
:需要传入到数组的元素
返回值:当调用该方法时,新的 length 属性值将被返回。
代码:
let arr = [];arr.push(1);arr.push('2');arr.push([3, 4, 5]);arr.push([...6, 7, 8]);console.log(arr);/*[1, "2", Array(3), 6, 7, 8]0: 11: "2"2: (3) [3, 4, 5]3: 64: 75: 8length: 6*/
reverse()
功能:
reverse()
方法将数组中元素的位置颠倒,并返回该数组。该方法会改变原数组。语法:
arr.reverse()
代码:
let arr = [1, 2, 3];arr.reverse();console.log(arr); // [3, 2, 1]
shift()
功能:
shift()
方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。语法:
arr.shift()
返回值:数组中删除第一个元素,并返回该元素的值。
代码:
let str = [1, 2, 3];console.log(str.shift()); // 1console.log(str.shift()); // 2console.log(str.shift()); // 3console.log(str.shift()); // undefined
unshift()
功能:
unshift()
方法将一个或多个元素添加到数组的开头,并返回该数组的新长度。语法:
arr.unshift(element1, ..., elementN)
element1
:要插入的第一个元素elementN
:要插入的第 N 个元素
返回值:当一个对象调用该方法时,返回其
length
属性值。(unshift
会改变原本数组)代码:
let arrA = ['1'];arrA.unshift('0');console.log(arrA); // ['0', '1']let arrB = [4, 5, 6];arrB.unshift(1, 2, 3);console.log(arrB); // [1, 2, 3, 4, 5, 6]
slice()
功能:
slice()
方法返回一个新的数组对象,这一对象是一个由begin
和end
决定的原数组的浅拷贝(包括begin
,不包括end
)。原始数组不会被改变。语法:
array.slice(begin, end)
begin
:(可选)提取起始处的索引(从 0 开始),从该索引开始提取原数组元素。end
:(可选)提取终止处的索引(从 0 开始),在该索引处结束提取原数组元素。
返回值:一个含有被提取元素的新数组。
代码:
var fruits = ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango'];var citrus = fruits.slice(1, 3);// fruits contains ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango']// citrus contains ['Orange','Lemon']
splice()
功能:
splice()
方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。语法:
array.splice(start, deleteCount, item1, item2, ...)
start
:指定修改的开始位置(从0计数)。deleteCount
:整数,表示要移除的数组元素的个数。item1, item2, ...
:要添加进数组的元素,从start 位置开始。如果不指定,则 splice() 将只删除数组元素。
返回值:由被删除的元素组成的一个数组。如果只删除了一个元素,则返回只包含一个元素的数组。如果没有删除元素,则返回空数组。
代码:
var months = ['Jan', 'March', 'April', 'June'];months.splice(1, 0, 'Feb');console.log(months);// ['Jan', 'Feb', 'March', 'April', 'June']months.splice(4, 1, 'May');console.log(months);// ['Jan', 'Feb', 'March', 'April', 'May']
sort()
原文:MDN - sort()
功能:
sort()
对数组的元素进行排序,并返回数组。语法:
sort(function)
function
:按某种顺序进行排列的函数。
返回值:排序后的数组。
代码:
[4, 2, 5, 1, 3].sort(), // [1, 2, 3, 4, 5][4, 2, 5, 1, 3].sort((a, b) => a < b), // [5, 4, 3, 2, 1]['a', 'd', 'c', 'b'].sort(), // ['a', 'b', 'c', 'd']['jsliang', 'eat', 'apple'].sort(), // ['apple', 'eat', 'jsliang']
toString()
功能:
toString()
返回一个字符串,表示指定的数组及其元素。语法:
arr.toString()
返回值:一个表示指定的数组及其元素的字符串。
代码:
let num = 123;num.toString(); // '123'