Скажем, у меня есть массив, как определено следующее:Удаление элемента из массива, а затем сохраняя свое состояние для дальнейшего использования без использования глобальных переменных
var str = ['H', 'e', 'l', 'l', 'o'];
У меня есть кнопка, которая, когда пользователь нажимает на он должен удалить первый элемент строки и вернуть полученный массив после удаления (т.е. ['e', 'l', 'l', 'o']
). Результирующий массив также должен быть сохранен в следующий раз при нажатии кнопки, следующий следующий элемент в массиве будет удален (т. Е. Результирующий массив будет ['l', 'l', 'o']
) и так далее, пока все элементы не будут удалены.
Это очень просто сделать, если массив является глобальной:
var str = ['H', 'e', 'l', 'l', 'o'];
function remove_first(the_array) {
the_array.shift();
return the_array;
}
del.onclick = function() {
result = remove_first(str);
}
Но я хочу, чтобы сделать это, не делая массив глобальным. Как бы вы это сделали?
'str = str.slice (1);' – Yoshi
'str' следует называть' arr': D Вышеуказанный метод также работает с (настоящими) строками: ''hello'.slice (1) ->" ello " '. – leaf