SyntaxError:missing;在声明之前

时间:2011-02-09 00:10:01

标签: javascript jquery html

我收到此错误:

SyntaxError: missing ; before statement

为什么我会从这段代码中得到它?我怎么能绕过这个?

var $this = $("input");
foob_name = $this.attr('name').replace(/\[(\d+)\]/, function($0, $1) {
   return '[' + (+$1 + 1) + ']';
}));

4 个答案:

答案 0 :(得分:19)

看起来你有一个额外的括号。

以下部分被解析为赋值,因此解释器/编译器将查找分号或尝试在满足某些条件时插入一个分号。

foob_name = $this.attr('name').replace(/\[(\d+)\]/, function($0, $1) {
   return '[' + (+$1 + 1) + ']';
})

答案 1 :(得分:7)

太多)括号删除其中一个。

答案 2 :(得分:4)

或者你可能会有这样的事情(重新声明一个变量):

var data = [];
var data = 

答案 3 :(得分:0)

我收到此错误,希望对您有所帮助:

const firstName = 'Joe';
const lastName = 'Blogs';
const wholeName = firstName + ' ' lastName + '.';

问题是我在空白空间和姓氏之间缺少加号(+)。这是一个超级简化的示例:我串联了9个不同的部分,因此很难发现错误。

摘要:如果出现“ SyntaxError:missing;语句之前”,请不要查看代码中的分号(;)符号有什么问题,请在该行上查找语法错误。