前后端——json字符串与json对象的转化

前端——方法一:eval

document.getElementById("button1").addEventListener('click', ()=> {
		let xhr = new XMLHttpRequest(); 
		
		// 请求方式, 请求地址, 是否异步
		xhr.open("post", "http://localhost:8090/helloword", true)
		// 设置请求头
		xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");

		xhr.onreadystatechange = function () {
			if(xhr.readyState == 4) {
				if(xhr.status == 200) {
					var text = xhr.response
					
					console.log(text)	//"{name: 'ly', age: 12, sex: 1}"
					// -------------------方法一---------------
					eval("var json = " + text)				
					// ---------------------------------------

					console.log(json.name)
					console.log(json.age)
					console.log(json.sex)
				}
			}
		}
		xhr.send("zoreId=1&data=12")
	})

前端——方法二:JSON.parse

document.getElementById("button1").addEventListener('click', ()=> {
		let xhr = new XMLHttpRequest(); 
		
		// 请求方式, 请求地址, 是否异步
		xhr.open("post", "http://localhost:8090/helloword", true)
		// 设置请求头
		xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded");

		xhr.onreadystatechange = function () {
			if(xhr.readyState == 4) {
				if(xhr.status == 200) {
					var text = xhr.response
					console.log(text)	//"{"name": 'ly', "age": 12, "sex": 1}"
					
					// -------------------方法二---------------
					// 使用这种方法,需要注意:字符串中的key必须使用引号引出
					var json = JSON.parse(text)
					// ---------------------------------------

					console.log(json.name)
					console.log(json.age)
					console.log(json.sex)
				}
			}
		}
		xhr.send("zoreId=1&data=12")
	})

在这里插入图片描述

后端——使用gson转化成json格式

@RequestMapping("/helloword")
    public String helloword(String zoreId, String data){
        System.out.println(zoreId+ " " +data);
        
        Student student = new Student("ly", 12, 1);
        // ------------------start--------------------------
        Gson gson = new Gson();
        String result = gson.toJson(student);
        // -------------------end-------------------------
        return result;
    }

前端——json对象转化为json字符串

var s = JSON.stringify(json)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值