[英]slice array from N to last element
如何进行这种转变?
["a","b","c","d","e"] // => ["c", "d", "e"]
我以为slice
可以做到这一点,但是..
["a","b","c","d","e"].slice(2,-1) // [ 'c', 'd' ]
["a","b","c","d","e"].slice(2,0) // []
不要使用第二个参数:
Array.slice(2);
https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/slice
如果省略 end,则切片提取到序列的末尾。
与@insomniac 的回答相关的一个重要考虑因素是splice
和slice
是两个完全不同的函数,主要区别在于:
splice
操作原始数组。slice
返回原始数组的子集,原始数组保持不变。有关更多信息,请参见: http : //ariya.ofilabs.com/2014/02/javascript-array-slice-vs-splice.html 。
只需给出起始索引,因为您需要数组中的其余数据。
["a","b","c","d","e"].splice(2) => ["c", "d", "e"]
["a","b","c","d","e"].slice(-3) => ["c","d","e"]
切片在指定的结束参数处结束,但不包括它。 如果要包含它,则必须将最后一个索引指定为数组的长度(在本例中为 5),而不是结束索引 (-1) 等。
["a","b","c","d","e"].slice(2,5)
// = ['c','d','e']
您必须在 n 前添加“-” 如果索引为负数,则末尾表示与末尾的偏移量。
function getTail(arr, n) {
return arr.slice(-n);
}
var arr = ["a", "b", "c", "d", "e"]; arr.splice(0,2); console.log(arr);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.