Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как обработать переданные функции параметры как массив? (https://javascript.ru/forum/misc/64547-kak-obrabotat-peredannye-funkcii-parametry-kak-massiv.html)

javascript_pupil 19.08.2016 11:32

Как обработать переданные функции параметры как массив?
 
Функции передаются данные:
onsubmit="return validateForm('parametr1', 'parametr2', 'parametr3')"


Мне нужно первый элемент списка использовать отдельно, а все остальные обработать как массив - все действия над ними будут одинаковыми, при этом число элементов массива может увеличиваться, поэтому не хотелось бы обращаться к каждому по его индексу, а просто обработать весь массив.

function validateForm(par1, par2, par3, ... par100500) {
...?
}


Как?

рони 19.08.2016 11:48

javascript_pupil,
function validateForm(par1) {


var arg = [].slice.call(arguments,1)
alert(JSON.stringify(arg))

}
 validateForm(1,2,3,4,5)

Rise 19.08.2016 12:23

Цитата:

Сообщение от javascript_pupil (Сообщение 426094)
не хотелось бы обращаться к каждому по его индексу, а просто обработать весь массив.

Простой открой для себя переменные его индексов...

рони 19.08.2016 12:32

Цитата:

Сообщение от Rise
переменные его индексов

а что это? и как связано с
Цитата:

Сообщение от javascript_pupil
не хотелось бы обращаться к каждому по его индексу


Rise 19.08.2016 12:45

рони, то что заместо циферок индекса можно писать переменную, но автор видимо не в курсе, поэтому ему и не хотелось бы, ведь массив может увеличиваться, а автор мыслит циферками... иначе бы сделал так:
for (var i = 1; i < arguments.length; i++) {
    alert(arguments[i]);
}

рони 19.08.2016 13:05

Rise,
ок!

warren buffet 19.08.2016 13:47

Цитата:

Сообщение от javascript_pupil
при этом число элементов массива может увеличиваться

При этом число элементов массива заранее неизвестно.

javascript_pupil 19.08.2016 13:59

Всем спасибо, всё получилось!


Часовой пояс GMT +3, время: 22:03.