Есть ли эквивалент для массива ruby [n..m] в Javascript?Javascript Array: get 'range' of items
Например:
>> a = ['a','b','c','d','e','f','g']
>> a[0..2]
=> ['a','b','c']
Благодаря
Есть ли эквивалент для массива ruby [n..m] в Javascript?Javascript Array: get 'range' of items
Например:
>> 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']
Последний индекс не включен; для имитации рубинового поведения вам нужно увеличить значение end
. Поэтому я думаю, slice
ведет себя больше как a[m...n]
в рубине.
a.slice(0, 3)
Был бы эквивалент вашей функции в вашем примере.
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/slice
рубин и Javascript оба имеют slice method, но следить, что второй аргумент нарежьте в Ruby, длина, но в JavaScript это индекс последнего элемента:
var shortArray = array.slice(start, end);
Второй аргумент в slice
не является обязательным, также:
var fruits = ['apple','banana','peach','plum','pear'];
var slice1 = fruits.slice(1, 3); //banana, peach, plum
var slice2 = fruits.slice(3); //plum, pear
Вы можете также передать отрицательное число, которое сель ЕКТС с конца массива:
var slice3 = fruits.slice(-3); //peach, plum, pear
Вот ссылка W3 школы link.
Как насчет ссылки на ссылку javascript Mozilla, которая намного информативнее и намного лучше написана, чем сайт W3 school (который не имеет ничего общего с W3C)? https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/slice –
да, coffeescript! [Новый и улучшенный диапазон, срез, сплайсинг и синтаксис цикла] (https://github.com/jashkenas/coffee-script/issues/835). –