语法错误:意外的令牌“-”。

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;
}

我有很多类似这样的功能,每个功能都出现了同样的错误。

有没有人遇到过同样的问题?

4个回答

6

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


1
你的意思是什么?因为问题似乎出在“-”上,我尝试用“_”替换“-”,看起来可以工作 :) - Totoro
是的,@alisnehx,没错。JavaScript不允许在标识符中使用“-”。 - Pointy
谢谢。看来我有一个大问题,因为我有一个使用cxf apache从wsdl到js自动生成的长代码。所以尝试手动替换每个代码是不可能的! - Totoro
@alisnehx 您将需要更改代码生成工具,或编写一个简短的程序来更改自动生成的输出。 - dave4420

5

JavaScript函数名中不能使用连字符(hyphens):

function www_ebest_eu_company_node_service_task-slot-info () {

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

哦,谢谢!我确实注意到了,所以不能将“-”视为函数名称的一部分吗? - Totoro

3

连字符“-”不是用来命名变量或函数的有效字符。 连字符用于算术、减法,而不是用于命名变量。 您可以将连字符替换为下划线或使用驼峰命名法。


2
破折号在标识符(函数、变量等)名称中不允许使用。请使用下划线或驼峰式大小写,并保持一致性。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接