日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

javascript对象和json字符串之间转换的问题

發布時間:2025/3/20 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 javascript对象和json字符串之间转换的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

在開發中,當使用ajax向后端發送請求返回一個json時,有兩個可能,一種是返回json字符串,一種是返回object

javascript中有兩個方法可以用來處理兩者之間的互相轉換問題:

  • JSON.parse(string) :接受一個 JSON 字符串并將其轉換成一個 JavaScript 對象。

  • JSON.stringify(obj) :接受一個 JavaScript 對象并將其轉換為一個 JSON 字符串。

此時我們定義一個ResultInfo實體類

package com.itheima.domain;import java.io.Serializable; import java.util.Objects;/*** 用于封裝后端返回前端數據對象*/ public class ResultInfo implements Serializable {private boolean flag;//后端返回結果正常為true,發生異常返回falseprivate Object data;//后端返回結果數據對象private String errorMsg;//發生異常的錯誤消息//無參構造方法public ResultInfo() {}public ResultInfo(boolean flag) {this.flag = flag;}/*** 有參構造方法* @param flag* @param errorMsg*/public ResultInfo(boolean flag, String errorMsg) {this.flag = flag;this.errorMsg = errorMsg;}/*** 有參構造方法* @param flag* @param data* @param errorMsg*/public ResultInfo(boolean flag, Object data, String errorMsg) {this.flag = flag;this.data = data;this.errorMsg = errorMsg;}public boolean isFlag() {return flag;}public void setFlag(boolean flag) {this.flag = flag;}public Object getData() {return data;}public void setData(Object data) {this.data = data;}public String getErrorMsg() {return errorMsg;}public void setErrorMsg(String errorMsg) {this.errorMsg = errorMsg;} }

定義一個TestServlet測試類

//創建json格式的字符串String allCategory="[{"cid":8,"cname":"全球自由行"},{"cid":5,"cname":"國內游"}];resultInfo=new ResultInfo(true,allCategory,null);//創建json轉換類ObjectMapper objectMapper = new ObjectMapper();//將ResultInfo對象轉為json字符串String jsonData=objectMapper.writeValueAsString(resultInfo);response.getWriter().write(jsonData);
  • 將一個json格式的字符串加入到ResultInfo對象中,再把該對象轉為json字符串發送給ajax請求的頁面。頁面獲取的ResultInfo對象為object對象,可以直接使用。而要使用該對象里的allCategory屬性的話,需要把allCategory轉為javascript對象。頁面獲取的ResultInfo對象的其它屬性為object對象,可以直接使用。
var categoryList=JSON.parse(resultInfo.data);
  • 也可以使用javascript的內置對象轉為javascript對象
var categoryList = eval("("+resultInfo.data+")");

?

總結

以上是生活随笔為你收集整理的javascript对象和json字符串之间转换的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。