SyntaxError: function statement requires a name
错误提示
SyntaxError: function statement requires a name [Firefox]SyntaxError: Unexpected token ( [Chrome]
错误类型
哪里出错了?
示例
语句与表达式
标号函数 (Labeled functions)
你使用函数标号 (labels)的时候,也需要在关键词function
后面提供一个函数名称。这样的代码是不能运行的:
js
function Greeter() { german: function () { return "Moin"; }}// SyntaxError: function statement requires a name
这个例子可以正常运行:
js
function Greeter() { german: function g() { return "Moin"; }}
对象方法
如果你想创建创建一个对象方法,那么需要首先创建一个对象。以下语法(function 关键字后面没有提供名称)是合法的:
js
var greeter = { german: function () { return "Moin"; },};
回调函数的语法
另外,如果使用到了回调函数,那么检查一下语法是否正确。大括号与逗号很容易使情况变糟。
js
promise.then( function() { console.log("success"); }); function() { console.log("error");}// SyntaxError: function statement requires a name
正确的形式应该是这样的:
json
promise.then( function() { console.log("success"); }, function() { console.log("error"); });