在JavaScript中是否有与Ruby的array[n..m]
相等的功能?
例如:
>> a = ['a','b','c','d','e','f','g']
>> a[0..2]
=> ['a','b','c']
在JavaScript中是否有与Ruby的array[n..m]
相等的功能?
例如:
>> a = ['a','b','c','d','e','f','g']
>> a[0..2]
=> ['a','b','c']
使用array.slice(begin [, end])
函数。
var a = ['a','b','c','d','e','f','g'];
var sliced = a.slice(0, 3); //will contain ['a', 'b', 'c']
最后一个索引不包括在内;为了模仿Ruby的行为,你需要增加end
值。所以我想slice
更像是Ruby中的a[m...n]
。
在 slice
中第二个参数也是可选的:
var fruits = ['apple','banana','peach','plum','pear'];
var slice1 = fruits.slice(1, 3); //banana, peach
var slice2 = fruits.slice(3); //plum, pear
您还可以传递一个负数,它将从数组的末尾开始选择:
var slice3 = fruits.slice(-3); //peach, plum, pear
这是W3 Schools参考 链接。
a.slice(0, 3)
是你例子中函数的等价物。
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/slice
a.slice(0, 3)
。在JavaScript中,slice方法不包括结束索引。 - Anuragvar shortArray = array.slice(start, end);