我对stringify有点问题。 我将变量从Java传递给JavaScript。 在out.println(strin)之后的Java中;它看起来像这样:
[{"date":"01-18-2015"},{"date":"01-19-2015"},{"date":"01-21-2015"},{"date":"01-19-2015"},{"date":"01-19-2015"},{"date":"01-19-2015"}]
所以我想把它传递给JavaScript
var obj = new String(<%= strin %>);
var tekst = JSON.stringify(obj);
alert(tekst);
但是这个警报仍然给我[对象Objetc],[对象对象]等。 但是,如果我把这些日期直接放到这样的JS变量:
var zmienna = '[{"date":"01-18-2015"},{"date":"01-19-2015"},{"date":"01-21-2015"},{"date":"01-19-2015"},{"date":"01-19-2015"},{"date":"01-19-2015"}]';
stringify很好用。 我真的很困惑。谁能给我一些提示?
我在Java中使用json的代码如下所示:
String next_date = "";
JSONArray json = new JSONArray();
while (daty.next()) {
next_date = formatter.format(daty.getDate("date"));
JSONObject obj = new JSONObject();
obj.put("date", next_date);
json.put(obj);
}
String strin = json.toString();
答案 0 :(得分:0)
您正在利用JSON表示法(JavaScript Object Notation)。
以这种方式声明变量时:
var zmienna = '[{"date":"01-18-2015"},{"date":"01-19-2015"},..];
你基本上宣称array[]
的元素是objects{}
。
相当于以下代码。
var firstDate = new Date("01-18-2015");
var secondDate =new Date("01-19-2015");
var zmienna = [firstDate, secondDate];
这是准备使用数组,而在其他代码中,您声明了一个String变量,其中包含一些字符。
var obj = new String(<%= string %>);
我希望它能澄清你的理解。