Здравствуйте.
Ошибки внутри
Object.observe() не выводятся в консоль, при этом если обернуть внутренности callback-функции в
try...catch, то эти ошибки ловятся, но без остановки выполнения кода.
Пример без
try...catch:
var test = [0,1];
function observer(){
'use strict';
a = 0; // должно вызвать ошибку
}
Object.observe(test, observer);
test.push(2); // не вызовет ошибку
Пример с
try...catch:
var test = [0,1];
function observer(){
'use strict';
try {
a = 0; // должно вызвать ошибку
} catch (error) {
console.error(error)
}
}
observer() // вызовет сообщение console.error(error)
Object.observe(test, observer);
test.push(2); // вызовет сообщение console.error(error)
Интересует: почему ошибки внутри Object.observe() не вызывают остановку кода и не выводятся в консоль? Можно ли обойтись без
try...catch?