javascript错误:缺少;声明前

javascript错误:缺少;声明前,javascript,Javascript,我的javascript出现错误:“missing;before语句” 我试图读入一个日期,如果它符合某个标准(本例中为joiner类型),则在该日期上加上6个月,如果不只是返回该日期 我看不出这里出了什么问题,一定是小问题,有什么想法吗 谢谢 function checkenddate(Par) { var array = Par.split("!!"); var usermskey = array[0]; var date = array[1]; var joine

我的javascript出现错误:“missing;before语句”

我试图读入一个日期,如果它符合某个标准(本例中为joiner类型),则在该日期上加上6个月,如果不只是返回该日期

我看不出这里出了什么问题,一定是小问题,有什么想法吗

谢谢

function checkenddate(Par) {
   var array = Par.split("!!");

   var usermskey = array[0];
   var date = array[1];
   var joinertype = array[2];

   saprep = UserFunc.uGetConstant("glb.REPOSITORY_ECC");
   attr1 = "Z_VALIDTO" + saprep;

   uWarning("Attribute: " + attr1);

   if (date == null && joinertype.equals("Contractor"))
   {
       SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
       Calender c = Calender.getInstance();
       c.setTime(sdf.parse(date));
       c.add(Calender.MONTH, 6);
       enddate = sdf.format(c.getTime());

       uWarning("End Date:" + enddate);

       OutString = uIS_SetValue(usermskey, 0, attr1, enddate);

       return enddate;
   } else {
       OutString = uIS_SetValue(usermskey, 0, attr1, date);
       return date;
   }
 }

这不是有效的javascript。不能有类型化变量,例如
simpleDataFormat sdf=new blah()
。将您的类型更改为
var
,它将按预期工作

var sdf = new SimpleDateFormat("yyyy-MM-dd");
var c = Calender.getInstance();

这不是您声明JS变量的方式:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
您需要这样做:

var sdf = new SimpleDateFormat("yyyy-MM-dd");

我建议您使用一个在线linting工具(例如JSHint或JSLint)来帮助跟踪这些问题-非常方便。

哪一行抛出了这个错误?您似乎混淆了Java和JavaScript——另请参见
Calender c=Calendar.getInstance()以及下面的答案。我没有得到一行抛出错误,只是错误:失踪;在声明之前。。。。。。。。。。。。。安迪,我申报日历的方式有问题吗??感谢还有更多的变量需要修改:saprep、attr1和enddate,除非它们是在函数外定义的。我尝试在此函数中声明变量,将SimpleDataFormat类型更改为“var”,但没有成功。。。无法运行字符串“$function.checkenddate(285342!!2015-04-29!!承包商)$$”中的函数。将条目标记为失败。异常是:org.mozilla.javascript.NotAFunctionException:glanbia_checkenddate(285342!!2015-04-29!!承包商)也更改了日历类型,但出现了新错误…………执行checkenddate(285343!!2015-04-28!!承包商)时出现运行时异常-未定义:“SimpleDataFormat”未定义。提示:检查脚本glanbia_checkenddate中的第18行看起来我需要更改SimpleDataFormat的delcaring??看起来我只需要导入java类……工作起来很有魅力!谢谢你,这答案有一半是正确的!测试你的代码并给出答案!我试过了,但是运气不好!不幸的是,仍然显示相同的错误消息