Бодрого вечера всем. Есть небольшой вопрос к знатокам javaScript. Очень хотелось бы понять суть отлова исключений, для чего это надо и почему не использовать просто if..else Какое преимущество даёт блок try..catch...finally, какое не даст никто иной Пример кода, работающего одинаково, только один основан на IF...ELSE, а второй TRY...CATCH, суть выполнения одна и та же.
**///Это на основе IF...ELSE**
function sum2(a,b){
if(typeof (a&&b) === "number") return a+b;
else if(typeof a !== "number") return "Первый";
else return "Второй"
}
console.log(sum2(10,2)); //12
console.log(sum2(10,"2")); //Второй
console.log(sum2("10",2)); //Первый
**///Это на основе TRY...CATCH**
function sum(a,b){
if (typeof (a&&b) === "number") return a+b;
else throw new Error("Не число");
}
try{
console.log(sum(1,"2")); //Не число
} catch(e){
console.log(e.message);
}
Суть не изменилась. Обе функции можно использовать абстрактно. Может кто-нибудь "на пальцах" объяснить основную суть использования TRY...CATCH. Перечитал кучу форумов, и некоторые уверены что дело в стиле программирования и всё. Хотя есть другая когорта программистов, которые считают что отлов исключений даёт некие преимущества, но излагают это таким языком (и преимущественно на СиШарп) что уловить основную идею невозможно. Заранее спасибо.
В большинстве случаев, действительно, почти любой try...catch
можно переписать на if...else
, НО:
finally
подделать не выйдет без дополнительных колдунств и телодвижений.Подскажите, как создать дополнительный слой через расширение для FirefoxТо есть при нажатии на кнопку над текущей страницей должна появляться...
Сайт malnerru Сделан на modx
Есть набор маркеров, которые отображаются JS кодом при определенных условияхПри первом нажатии отображаются маркеры выбранного пункта, при...