'Syntax error, unexpected token =' 在js函数中

'Syntax error, unexpected token =' in js function

我在 chrome 中收到此错误,而 mozilla 处理良好。我将此错误发送给一个函数,如下所示

function abc( xyz = false){ "My logic" }

错误指向“=”运算符。请帮忙解决这个问题。

这是 ECMASCRIPT 版本 6 的标准,称为 Default parameters。因此它可能在您的 chrome 版本中不可用,而 FF 有。

您可以通过两种方式实现同​​样的目的:

function abc( xyz ){ "My logic" }

var pVal = mightbe || false;
abc(pVal); //<---- now pass it here;

或:

function abc( xyz ){ 
    // before processing anything you can do this
    var o = xyz || false; // if there is any value in the xyz then that will
                          // be assigned otherwise false will be the default value.
    "My logic" 
}

这是ES6语法,大多数浏览器只支持很少的ES6特性,你可以从这里查看:https://kangax.github.io/compat-table/es6/(在你的例子中你使用了默认的函数参数)

如果你想写 ES6 语法(这在很多方面都很吸引人),你可以使用一些代码转译工具,比如 babel:https://babeljs.io/