Chrome - 在函数参数中声明变量

时间:2012-12-19 17:16:13

标签: javascript function google-chrome variables

我有一个非常烦人的错误,我在谷歌上找不到任何东西。

以下代码适用于Firefox,但Chrome会返回错误'Uncaught SyntaxError:Unexpected token ='

test = function(test = 'test'){};

我的Chrome版本是23.0.1271.97 - 我知道如何解决这个问题吗?

谢谢:)

1 个答案:

答案 0 :(得分:0)

它不是“声明变量” - 而是被描述为“设置函数参数的默认值”。考虑一下:

var x = 3;
var test = function(x = 4){
  console.log(x)
};
console.log(x); // 3
test();         // 4
test(5);        // 5

换句话说,在该函数表达式中声明的x对于此函数是本地的。

它很有用,同意,但目前Firefox是支持此功能的唯一浏览器(ES6草案规范的一部分)。

更确切地说,它只是Firefox 15+,如this page所示。