Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   UpJump: Q&A :) (https://javascript.ru/forum/misc/14421-upjump-q.html)

Kolyaj 09.03.2011 21:57

Цитата:

Сообщение от UpJump
Где ошибка?

Во второй строчке.

UpJump 09.03.2011 22:40

ну так а как обработчик будет перехватывать ошибку которой нету?
Цитата:

Никак не могу увидеть как работает onerror.

Aetae 09.03.2011 22:54

Вопрос:
Цитата:

Сообщение от UpJump (Сообщение 95783)
Всем снова привет! Это опять я.
Никак не могу увидеть как работает onerror. Вот код, но эффект == 0;
Где ошибка?
var a;
a();
onerror = function(msg){alert(msg);};

Ответ:
Цитата:

Сообщение от UpJump (Сообщение 95795)
ну так а как обработчик будет перехватывать ошибку которой нету?


Пояснение:
var a;
a(); //ошибка, парсинг скрипта остановлен
onerror = function(msg){alert(msg);}; //обработчик который никогда не будет назначен, но даже если был бы - никаких ошибок то больше нет


var a;
onerror = function(msg){alert(msg);};
a();

UpJump 09.03.2011 23:32

А ну да... все верно. спс. глупо как-то получилось

UpJump 04.04.2011 16:57

всем привет! давненько я тут не отписывался. собственно возник вопрос.
За прочтением флэнагана встречал похожий код.(20.2.5 если кому интересен пример)
function f(x){
//какое-нибудь тело
}

f(null);


Что дает передача аргумента null в функцию. Понял что в функцию передается объект который говорит о том что "я пуст", но что конкретно это дает при передачи в функцию. Это какой-то хитрый ход, если нет то зачем тогда вообще вызывать функцию со значением аргумента равным null? В общем помогите разобраться.

melky 04.04.2011 17:01

(function(a,b,c){  
alert( [ a,b,c ].join("\n") );
 })(null,undefined,4)


может,когда есть несколько аргументов, и чтобы не передавать в функцию объект, пишут нул ? null короче , может просто из-за этого?

UpJump 04.04.2011 17:11

не думаю что это в моей ситуации. если быть более точным то код можно привести такой
function f(callback){
if(...) //какое-нить условие
else callback(null)
}


Может быть неизвестное кол-во аргументов.

PS
Д.Флэнаган 5-издание. глава Работа с протоколом HTTP(20.2.5) пример 20.7.

melky 04.04.2011 17:24

Цитата:

Сообщение от UpJump (Сообщение 99238)
Д.Флэнаган 5-издание. глава Работа с протоколом HTTP(20.2.5) пример 20.7.


комментарии сверху ф-и

Цитата:

Отправляет HTTPзапрос GET с заданным URL. В случае успешного
* получения ответа он преобразуется в объект на основе заголовка
* ContentType и передается указанной функции обратного вызова.
* Дополнительные аргументы могут быть переданы в виде свойств объекта options.
*
* Если получен ответ с сообщением об ошибке (например, сообщение
* 404 Not Found), код состояния и сообщение передаются функции
* options.errorHandler. Если обработчик ошибок не определен, вызывается
* функция обратного вызова со значением null в аргументе
.

(function(  a   ){

 a(null); // null

 a(); // undefined

 })(   alert   )


т.е. либо нул , либо объект с результатами запроса.

почему нул, а не просто () , хз

может, потому что null - это " никакое значение (ничего) ", а undefined ( или без аргументов ) , потому что " объявлено, но не присвоено значения " ?

look!

UpJump 04.04.2011 19:05

мерси

x-yuri 04.04.2011 23:16

скорее всего это не важно, можно и без null


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