Показать сообщение отдельно
  #3 (permalink)  
Старый 25.08.2008, 12:46
Флудер
Отправить личное сообщение для ZoNT Посмотреть профиль Найти все сообщения от ZoNT
 
Регистрация: 25.07.2008
Сообщений: 1,271

Сообщение от Octane Посмотреть сообщение
Возможно ли выполнить подобное в IE:
var array = [].slice.call(document.body.childNodes);


Странно, почему же тогда код успешно выполняется и в IE с «arguments», который тоже не является «Array»?
(function(a, b, c) {
	alert([].slice.call(arguments).length);
})(1, 2, 3);
И что тут удивительного?
Ты вызываешь метод slice пустого массива, передаёшь (смотри формат комманды call) ему arguments, а сартИндекс и ЭндИндекс не передаёшь, соответственно он возвращает НОВЫЙ массив со всеми элементами (с первого по последний), что были в arguments.
Ответить с цитированием