我的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;
}
}
答案 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)来帮助追踪这些问题 - 非常方便。