Бывают ситуации, когда нужно проверить существует ли объявление функции непосредственно перед её вызовом. На языке php для этого существует специальная функция bool function_exists (string $function_name). В языке JavaScript такая функция, увы, отсутствует. Тогда напишем своими ручками...
Эквивалент функции function_exists на JavaScript будет выглядеть следующим образом:
if (window.runThisFunction) { // if function is defined - run it
runThisFunction();
}
Это было самое простое и короткое решение, но для любителей всё усложнять, могу привести и другой пример, который удалось найти в Интернете. Более сложный пример function_exists на JavaScript приведен ниже, оформлен в виде функции, возвращающей bool-значения:
function function_exists (function_name) {
if (typeof function_name == 'string'){
return (typeof this.window[function_name] == 'function');
} else{
return (function_name instanceof Function);
}
}
Комментариев нет:
Отправить комментарий