Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #51 (permalink)  
Старый 27.01.2010, 18:56
Аватар для Niar
Труъ кодер
Отправить личное сообщение для Niar Посмотреть профиль Найти все сообщения от Niar
 
Регистрация: 20.01.2010
Сообщений: 194

Эээ у Дэвида написано что один из вариантов использования finally если try был закончен из-за инструкции break, continue или return. Если break можно еще использовать с меткой то как c continue и return там же SyntaxError
__________________
http://www.free-lance.ru/users/Nia173 Мой аккуант на free-lance.
Ответить с цитированием
  #52 (permalink)  
Старый 27.01.2010, 19:00
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Мараторий, еще можно так:
try { eval.call(document, '1') } catch ( ex ) { console.info(ex) }

Практически -- не знаю, разве что действительно отлавливать некорректное использование eval.
Здесь Есть дискуссия на подобную тему, вроде бы.
Ответить с цитированием
  #53 (permalink)  
Старый 27.01.2010, 19:06
Аватар для Niar
Труъ кодер
Отправить личное сообщение для Niar Посмотреть профиль Найти все сообщения от Niar
 
Регистрация: 20.01.2010
Сообщений: 194

Есть еще места где можно почитать об этом на русском?
__________________
http://www.free-lance.ru/users/Nia173 Мой аккуант на free-lance.
Ответить с цитированием
  #54 (permalink)  
Старый 27.01.2010, 19:08
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

гугл
Ответить с цитированием
  #55 (permalink)  
Старый 27.01.2010, 19:09
Аватар для Niar
Труъ кодер
Отправить личное сообщение для Niar Посмотреть профиль Найти все сообщения от Niar
 
Регистрация: 20.01.2010
Сообщений: 194

Я ему не верю)
Он один раз привёл меня на сайт где можно 1 000 000$ заработать и нифига. Обманул
__________________
http://www.free-lance.ru/users/Nia173 Мой аккуант на free-lance.
Ответить с цитированием
  #56 (permalink)  
Старый 27.01.2010, 19:11
Аватар для Niar
Труъ кодер
Отправить личное сообщение для Niar Посмотреть профиль Найти все сообщения от Niar
 
Регистрация: 20.01.2010
Сообщений: 194

А можно я вас приведу пару примеров и вы мне расскажите правильно я понял алгоритм работы кода?
__________________
http://www.free-lance.ru/users/Nia173 Мой аккуант на free-lance.
Ответить с цитированием
  #57 (permalink)  
Старый 27.01.2010, 19:13
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

Сообщение от Niar Посмотреть сообщение
Я ему не верю)
Он один раз привёл меня на сайт где можно 1 000 000$ заработать и нифига. Обманул
Фу, как не стыдно обвинять гугл в собственной некомпетентности
Сообщение от Niar Посмотреть сообщение
А можно я вас приведу пару примеров и вы мне расскажите правильно я понял алгоритм работы кода?
Давайте, попробуем.
Ответить с цитированием
  #58 (permalink)  
Старый 27.01.2010, 19:20
Аватар для Niar
Труъ кодер
Отправить личное сообщение для Niar Посмотреть профиль Найти все сообщения от Niar
 
Регистрация: 20.01.2010
Сообщений: 194

try {
throw new Error(404)
 }
finally {
alert("Пыщь-пыщь")
}
try{
throw new Error(405)
}
catch(e){
alert(e.message)
}

Тут сначала исполняется finally. Так как catch нету он ищет его дальше. Однако catch принадлежит другому try и в результате ошибка.
try{
throw new Error(405)
try {
throw new Error(404)
 }
finally {
alert("Пыщь-пыщь")
}
}
catch(e){
alert(e.message)
}

Тут сразу находит 405 ошибку и в результате остальной код try не исполняется и ищется catch, и находится.
try{
try {
throw new Error(404)
 }
finally {
alert("Пыщь-пыщь")
}
}
catch(e){
alert(e.message)
}

Тут сразу находит 404 ошибку и ищется catch. Но он находит только finally и исполняет его. Потом ищет catch на внешнем уровне и находит.

try {
throw new Error(404)
 }
finally {
alert("Пыщь-пыщь")
throw new Error(406)
}

А тут finally заменяет старое исключение на новое
__________________
http://www.free-lance.ru/users/Nia173 Мой аккуант на free-lance.
Ответить с цитированием
  #59 (permalink)  
Старый 27.01.2010, 19:25
Аватар для Мараторий
Кандидат Javascript-наук
Отправить личное сообщение для Мараторий Посмотреть профиль Найти все сообщения от Мараторий
 
Регистрация: 22.01.2010
Сообщений: 114

Да, вроде все верно.

Однако последний пример не тривиален для понимания.

Последний раз редактировалось Мараторий, 27.01.2010 в 19:28.
Ответить с цитированием
  #60 (permalink)  
Старый 27.01.2010, 19:27
Аватар для Niar
Труъ кодер
Отправить личное сообщение для Niar Посмотреть профиль Найти все сообщения от Niar
 
Регистрация: 20.01.2010
Сообщений: 194

Не понятно только как try может быть завершён continue и return
__________________
http://www.free-lance.ru/users/Nia173 Мой аккуант на free-lance.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск