- 内置pop方法
空数组:var args = new Array("Lucas", "Mia", "Emily"); console.log(args.pop()); //Emily console.log(typeof args.pop()); //string console.log(args); //[ 'Lucas', 'Mia' ]
var args = new Array("Lucas", "Mia", "Emily"); console.log(args.pop()); //undefined console.log(typeof args.pop()); //string console.log(args); //[]
pop
方法删除并返回数组的最后一个元素,注意该方法在获取了数组的最后一个元素的同时也将原数组的最后一个元素给删除了。如果数组已经为空,则该方法不改变数组,并返回undefined
值。
ES6解构数组:
基于解构数组使用var args = new Array("Lucas", "Mia", "Emily"); console.log([...args].pop()); //Emily console.log(typeof [...args].pop()); //string console.log(args); //[ 'Lucas', 'Mia', 'Emily' ]
pop
方法不会改变数组本身。 - length方法
var args = new Array("Lucas", "Mia", "Emily"); console.log(args[args.length-1]); //Emily console.log(typeof args[args.length-1]); //string console.log(args); //[ 'Lucas', 'Mia', 'Emily' ]
- 浅复制的slice方法
当使用负数作为参数时就表示从数组末尾开始计数。而当省略第二个可选参数时,表示一直复制到数组末尾。所以使用var args = new Array("Lucas", "Mia", "Emily"); console.log(args.slice(-1)); //[ 'Emily' ] console.log(args.slice(-2)); //[ 'Mia', 'Emily' ] console.log(Array.isArray(args.slice(-1)));//true console.log(args); //[ 'Lucas', 'Mia', 'Emily' ]
slice(-1)
可以获取数组的最后一个元素。
注意:
slice
方法返回值为array
类型,不是string
。