Как правильно объявить функцию updateParam() чтобы параметр successCallback был опционален?
Тоесть чтобы обы следующих вызова функции были корректны:
1.
updateParam("myName", "myValue");
2.
updateParam("myName", "myValue", function(){
console.log("Callback");
});
Моя функция:
function updateParam(parameterName, value, successCallback) {
$.ajax({
type: 'POST',
url: 'index.php?c=params&a=updateParam',
///....
success: function (data) {
var response = $.parseJSON(data);
if (response != true) {
console.log(data);
ShowError();
}else{
successCallback();
}
}
});
}
UPDATE:
Интересует есть ли способ декларирования фунции с опциональным параметром, а не простая проверка существует ли объект.
Либо же, в крайнем случае, проверка является ли этот объект функцией.
Ответ
В ES2015 можно использовать параметры по умолчанию
function updateParam(parameterName, value, successCallback=function(){}) {
Важно: данный метод помогает только если параметр не будет передан при вызове. Но он никак не поможет, если в функцию будет передан параметр не ожидаемого типа.
Комментариев нет:
Отправить комментарий