Safari 中的默认函数参数值无法使用

13

我正在使用angularjs,在Safari中使用null赋值时出现问题,但在Chrome和Firefox中可以正常工作。

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

我遇到了这个错误

SyntaxError: Expected token ')'

当我移除null时,它就奏效了。我不知道为什么!

$scope.submit = function(id){
}
请帮我理解为什么这只在Safari中发生?

4
默认函数参数值是 ES2015 的一个特性,Safari 显然不支持该功能。 - Pointy
1个回答

20

ES2015默认参数在Safari中尚未得到支持。请查看兼容性表格

目前,基本支持提供Chrome 49和Firefox 15。


但您可以使用以下ES5代码来实现相同的效果:

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

谢谢,你知道有什么替代方案吗? - GRESPL Nagpur
再次感谢您 :) - GRESPL Nagpur

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接