2012-01-21 113 views
4

我在做一个Web应用程序,当我开始用JavaScript编写的代码,我得到这个错误:语法错误:意外的标记“ - ”

Syntax error: unexpected token "-" javascript 

我使用的Aptana Studio的3。我认为这是Aptana的问题,所以我试着用Eclipse,但仍然有同样的错误。 Eclipse中显示我这个错误:

Cannot return from outside a function or method. 

这里是我的功能:

function www_ebest_eu_company_node_service_task-slot-info() { 
    this.typeMarker = 'www_ebest_eu_company_node_service_task-slot-info'; 
    this._endDateTime = null; 
    this._number = null; 
    this._orderId = null; 
    this._startDateTime = null; 
    this._taskId = null; 
    this._taskStatus = null; 
} 

我有很多这样的功能,并为他们每个人的我得到了同样的错误。

有没有人有同样的问题?

回答

6

www_ebest_eu_company_node_service_task-slot-info不是有效的JavaScript标识符。

+1

你是什么意思?因为这个问题似乎是“ - ”,因为我试图用“_”替换“ - ”,并且它似乎工作:) – Totoro

+0

是的,@alisnehx,没错。 JavaScript不允许在标识符中使用“ - ”。 – Pointy

+0

谢谢..看来我有一个大问题,那么因为我有一个自动生成的长码,用csf apache从wsdl到js ..所以不可能用traying代替他们中的每个人! – Totoro

2

标识符(函数,变量等)名称中不允许有虚线。保持与下划线或驼峰一致。

5

您不能在JavaScript函数名称中使用连字符:

function www_ebest_eu_company_node_service_task-slot-info() { 

// Should proabbly be 
function www_ebest_eu_company_node_service_task_slot_info() { 
//---------------------------------------------^^^^^^^^ 
+0

哦,是的,谢谢你!事实上,我注意到它,所以没有办法像接受函数名称的一部分那样接受“ - ”。 – Totoro

3

连字符“ - ”不是命名变量或函数的有效字符。连字符用于算术,减法,不用于命名变量。您可以用下划线替换连字符,也可以使用CamelCase符号。