Jak dokonać tej transformacji?macierz od N do ostatniego elementu
["a","b","c","d","e"] // => ["c", "d", "e"]
Myślałam że slice
może to zrobić, ale ..
["a","b","c","d","e"].slice(2,-1) // [ 'c', 'd' ]
["a","b","c","d","e"].slice(2,0) // []
Jak dokonać tej transformacji?macierz od N do ostatniego elementu
["a","b","c","d","e"] // => ["c", "d", "e"]
Myślałam że slice
może to zrobić, ale ..
["a","b","c","d","e"].slice(2,-1) // [ 'c', 'd' ]
["a","b","c","d","e"].slice(2,0) // []
Nie stosować drugi argument:
Array.slice(2);
https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/slice
Jeśli pominięto koniec, plasterek wyodrębnia się do końca sekwencji.
Daj indeks początkowy, jak chcesz resztę danych z tablicy ..
["a","b","c","d","e"].splice(2) => ["c", "d", "e"]
Ważną kwestią odnoszącą się do odpowiedzi przez @insomniac że splice
i slice
są dwie zupełnie różne funkcje, z główną różnicą:
slice
zwraca podtytuł oryginalnej tablicy, przy czym pierwotna tablica pozostaje nietknięta. Aby uzyskać więcej informacji,Zobacz: http://ariya.ofilabs.com/2014/02/javascript-array-slice-vs-splice.html.
ok ... ale co, jeśli nie mogę przewidzieć, czy koniec plasterka zostanie zdefiniowany czy nie. W pythonie mamy str [start: None], aby wyciąć do końca. Jak mogę to zrobić w javascript? – yota
@yota Jeśli znasz długość tablicy, możesz podać ją jako drugi argument: 'arr.slice (2, arr.length)'. Jeśli drugi argument przekroczy długość tablicy, nadal będzie zwracał 'begin' aż do końca sekwencji. Jeśli to nie działa, będziesz potrzebować instrukcji if. –