Java JSON stringify仍然在JS中返回[object]
我对stringify有点问题。 我将变量从Java传递到JavaScript。 在out.println(strin)之后的Java中;看起来是这样的:Java JSON stringify仍然在JS中返回[object],java,javascript,jquery,json,Java,Javascript,Jquery,Json,我对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"}] String next_date = ""; JSONAr
[{"date":"01-18-2015"},{"date":"01-19-2015"},{"date":"01-21-2015"},{"date":"01-19-2015"},{"date":"01-19-2015"},{"date":"01-19-2015"}]
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();
所以我试图将其传递给JavaScript
var obj = new String(<%= strin %>);
var tekst = JSON.stringify(obj);
alert(tekst);
stringify工作得很好。
我真的很困惑。有人能给我一些提示吗
我的Java json代码如下所示:
[{"date":"01-18-2015"},{"date":"01-19-2015"},{"date":"01-21-2015"},{"date":"01-19-2015"},{"date":"01-19-2015"},{"date":"01-19-2015"}]
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();
您利用的是JSON符号(JavaScript对象符号)
以这种方式声明变量时:
var zmienna = '[{"date":"01-18-2015"},{"date":"01-19-2015"},..];
基本上,您可以声明一个数组[]
,其中的元素是对象{}
它相当于下面的代码
var firstDate = new Date("01-18-2015");
var secondDate =new Date("01-19-2015");
var zmienna = [firstDate, secondDate];
这就可以使用数组了,而在另一段代码中,您可以声明一个字符串变量,其中包含一些字符
var obj = new String(<%= string %>);
var obj=新字符串();
我希望它澄清了您的理解。
新字符串
是一个对象。您应该使用字符串文字。也许var obj=
BTW对变量使用英文名称是一种常见的习惯。