JavaScript - 以格式方式将ArrayList保存到变量

时间:2016-02-20 17:38:03

标签: javascript java arraylist

我正在尝试创建一个有三个日期的arraylist。然后我想以格式化的方式将arraylist保存到变量中。但是,当我尝试document.write变量时,元素完全不同。

<script>
<% List<String> strList = new ArrayList<String>();
strList.add("23-2-2016");
strList.add("24-2-2016");
strList.add("25-2-2016"); %>


var unavailableDates = [<% for (int i = 0; i < strList.size(); i++) { %><%= strList.get(i) %><%= i + 1 < strList.size() ? ",":"" %><% } %>];

document.write(unavailableDates);
</script>

我想要的结果是“23-2-2016”,“24-2-2016”,“25-2-2016”。

但是,我显示的是:-1995,-1994,-1993

1 个答案:

答案 0 :(得分:1)

打印javascript时需要使用字符串文字,否则您的日期将被视为算术表达式(23 - 2 - 2016 = -1995)。

var unavailableDates = [
    <% for (int i = 0; i < strList.size(); i++) { %>
        '<%= strList.get(i) %>'
    //  ^                     ^
        <%= i + 1 < strList.size() ? ",":"" %>
    <% } %>
];