javascript中對象與字符串的互轉(zhuǎn)
對象轉(zhuǎn)為字符串:通過JSON.encode方法,這個是json.js里面的方法,引入到當前文件就可以了。 字符串轉(zhuǎn)換為對象:①使用JSON.decode方法,同上,引入js就可以了。②jQuery中有個方法,$.parseJson也可以實現(xiàn)。 java中json字符串與對象的互轉(zhuǎn)
對象轉(zhuǎn)換為字符串:在struts2-json-plugin.jar中有個JsonUtil.serial方法。也可以自己自由定制,通過字符串拼接的方式實現(xiàn),json字符串的屬性一定要是雙引號,單引號或者是不適用都會報錯。eg:"{\"id\":123,\"name\":\"wch\",\"children\":[{\"id\":456}]}", 字符串轉(zhuǎn)換為對象:JsonObject.fromObject(),如果是數(shù)組就使用JsonArray.fromObject().json對象中只有對象或者是數(shù)組。不過這個只能轉(zhuǎn)換當前的屬性,如果對象中有數(shù)組或者是列表就要自己再次賦值轉(zhuǎn)換。就比如上面的json字符串你是不能一步到位的,即使對象有個屬性是children這個list也不會自動將字符串給你轉(zhuǎn)換為列表的。 java字符串轉(zhuǎn)換為javascript對象
java和js的接觸只會發(fā)生在jsp中(我目前是這么認為的),在jsp中只要 var obj = <%=javaStr%>就可以了。也可以先賦值給js中的字符串var obj = "<%=javaStr%>"再使用第一步中的字符串轉(zhuǎn)換為對象。 javascript字符串轉(zhuǎn)換為java對象
如果要自己實現(xiàn)的話要,①先轉(zhuǎn)換為js中的字符串,通過參數(shù)傳遞的方式賦值給java中的屬性。②使用低第二步的方法進行轉(zhuǎn)換。如果使用struts2的話這一切都顯得那么易如反掌了,你要做的就是定義action中同名的屬性。
更多建議: