Подтвердить что ты не робот

Разбить массив на два на основе индекса в javascript

У меня есть массив со списком объектов. Я хочу разбить этот массив на один конкретный индекс, скажем, 4 (это переменная real). Я хочу сохранить вторую часть разделенного массива в другой массив. Может быть, просто, но я не могу придумать хороший способ сделать это.

4b9b3361

Ответ 1

Используйте slice как таковой:

var ar = [1,2,3,4,5,6];

var p1 = ar.slice(0,4);
var p2 = ar.slice(4);

Ответ 2

Вы можете использовать [email protected] для измельчения всех элементов после указанного индекса с конца массива и возврата их:

x = ["a", "b", "c", "d", "e", "f", "g"];
y = x.splice(3);
console.log(x); // ["a", "b", "c"]
console.log(y); // ["d", "e", "f", "g"]

Ответ 3

используйте slice:

var bigOne = [0,1,2,3,4,5,6];
var splittedOne = bigOne.slice(3 /*your Index*/);

Ответ 4

Вы также можете использовать оболочку underscore/lodash:

var ar = [1,2,3,4,5,6];
var p1 = _.first(ar, 4);
var p2 = _.rest(ar, 4);

Ответ 5

Простая одна функция из lodash: const mainArr = [1,2,3,4,5,6,7] const [arr1, arr2] = _.chunk(mainArr, _.round(mainArr.length/2));

Ответ 6

Я бы рекомендовал использовать slice(), как показано ниже

ar.slice(startIndex,length); или ar.slice(startIndex);

var ar = ["a","b","c","d","e","f","g"];

var p1 = ar.slice(0,3);
var p2 = ar.slice(3);

console.log(p1);
console.log(p2);