Посмотрите это array.splice и вернитесь сюда.
Теперь, когда вы знаете, что делает array.splice ().
Здесь в основном происходят две вещи:
1. a.splice(i, 0, a[j - 1]);
Эта часть кода берет текущий последний элемент a (a [j - 1]) и помещает его в i -й индекс a
и сдвигает элементы вправо на i -й указатель на одну позицию.
* ** 1 022 тысяча двадцать-один * ПРИМЕР 1 * 1 023 *
на первом шаге:
i = 0
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
j = длина a
a [j - 1] = 10
результат a.splice (i, 0, a [j - 1]); есть
a = [10,1,2,3,4,5,6,7,8,9,10]
2. a.splice(j, 1);
На этом шаге мы удаляем лишний последний элемент, оставшийся в a после шага 1
Из ПРИМЕРА-1 мы видим, что длина a увеличилась на 1 единицу.
Итак, на этом шаге мы берем последний элемент a (теперь a [j] ) и удаляем его.
чтобы получить результат a = [10,1,2,3,4,5,6,7,8,9]
Теперь для i = 1
a.splice (i, 0, a [j - 1]); дает = [10,9,1,2,3,4,5,6,7,8,9] и
* 1 072 * a.splice (к, 1); дает = [10,9,1,2,3,4,5,6,7,8]
Этот процесс повторяется до тех пор, пока i == a.length, т.е. больше не останется элементов для вращения.