javascript错误:缺失;在声明之前

时间:2015-04-20 11:03:21

标签: javascript

我的javascript收到错误:"丢失;在陈述之前"。

我试图在某个日期阅读,如果它符合某个标准(在这种情况下是木匠类型),并且如果不是仅仅返回该日期,则在该日期添加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;
   }
 }

2 个答案:

答案 0 :(得分:2)

这不是有效的JavaScript。您不能使用SimpleDateFormat sdf = new blah()等类型变量。将您的类型更改为var,它将按预期工作。

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

答案 1 :(得分:1)

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

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

你需要这个:

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

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