понедельник, 7 ноября 2016 г.

1.9 Обработка исключений

(Из книги "Говоря на языке JavaScript").

Самый распространенный способ обработки исключений (см. Главу 14) следующий:
 
function getPerson(id) {
    if (id < 0) {
        throw new Error('ID must not be negative: '+id);
    }
    return { id: id }; // normally: retrieved from database
}

function getPersons(ids) {
    var result = [];
    ids.forEach(function (id) {
        try {
            var person = getPerson(id);
            result.push(person);
        } catch (exception) {
            console.log(exception);
        }
    });
    return result;
}
 
Конструкция try содержит критически опасный код, а catch возбуждается, если внутри блока try происходит исключительная ситуация. Используя предыдущий код, можно проиллюстрировать это так:
 
getPersons([2, -5, 137])
[Error: ID must not be negative: -5]
[ { id: 2 }, { id: 137 } ]

Комментариев нет:

Отправить комментарий