Показать сообщение отдельно
  #16 (permalink)  
Старый 13.08.2011, 03:01
Аватар для Gremlin
Интересующийся
Отправить личное сообщение для Gremlin Посмотреть профиль Найти все сообщения от Gremlin
 
Регистрация: 12.08.2011
Сообщений: 15

Сделал как в посте 12. Сделал по образу и подобию с 1-й по 7-ю строки и с 13-й по 16-ю. Так тоже работает areYouSure стала немножечкого запутанее выглядеть, но зато её вызов стал куда приятнее Нагляднее варианта ещё не встречал.

Только вот эта функция взорвала мозг:
function mycallbackfunc() {
    alert( Array.prototype.slice.call( arguments, 0 ) );
}

У нее в скобках не указаны входящие аргументы: получается что при использовании apply входящие аргументы могут не указываться в функции? Они прямо внутрь нее без указания залетают что-ли?

И что эта за конструкция внутри алерта такая убийственная???
Насколько я понял (предварительно погугливши), ее задача превратить полученный обьект с параметрами в обычный массив для возможности дальнейшего его вывода. Но вот главная непонятка: что это за параметр такой arguments? Это какая-то зарезервированная входящая переменная(обьект), в которой находятся все переданные call-ом параметры? Думаю что да, но не уверен. Пробовал вставлять эту строку в любую из своих вызываемых функций - она действительно выводит список аргументов.


И следовательно напрашивается новый вопрос: как лучше и правильнее получать аргументы внутри вызываемой функции: через указание аргументов в скобках после слова function, или получать при помощи этого хитрого обьекта arguments, манипуляции над которым проводятся в строке 10?

Последний раз редактировалось Gremlin, 13.08.2011 в 03:20.
Ответить с цитированием