Значение параметра функции по умолчанию в сафари не работает

Я использую angularjs и имею проблему с присваиванием null только в сафари. Его работа в хроме и firefox.

$scope.submit = function(id=null){
}

Я получаю эту ошибку

SyntaxError: Expected token ')'

когда я удаляю null, он просто работает. Я не знаю, почему!

$scope.submit = function(id){
}

Пожалуйста, помогите мне понять, почему это происходит только с сафари?

Ответ 1

Параметры по умолчанию от ES2015 еще не поддерживаются в Safari. Проверьте таблицу совместимости .

В настоящий момент базовая поддержка обеспечивает Chrome 49 и Firefox 15.


Но для достижения этого можно использовать следующий код ES5:

$scope.submit = function(id) {
  if (id === undefined) {
    id = null;
  }
}