侧边栏壁纸
  • 累计撰写 15 篇文章
  • 累计创建 2 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录
JS

【js】通过url传递object对象

十七画生
2022-10-09 / 0 评论 / 0 点赞 / 814 阅读 / 335 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2022-12-15,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

这是一个object对象,现在将这个对象通过url传递到另一个页面

var data={id:1,name:'张三'}

页面1

1. 将object对象转换成json字符串
   let json = JSON.stringify(data);
3. 将json字符串作为url进行编码
   let jsons=encodeURI(json);
4. 将编码后的json字符串拼接到url后
   'http://localhost:8081/test_war_exploded/index.html?data='+jsons

页面2

1. 先获取url路径
 let search = location.search;
2. 对url路径进行解码,不进行解码很大概率会出现乱码
 let url=decodeURI(search);
3. 将url中的参数转换成json对象  
	var theRequest = new Object();
        if (url.indexOf("?") != -1) {
            var str = url.substr(1);
            strs = str.split("&");
            for (var i = 0; i < strs.length; i++) {
                theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);
            }
        }
4. 最后输出的结果
	{data:'{“id”:1,"name":"张三"}'}
5. 使用JSON.parse转化Object内的data数据为json对象
	let jsonObj=JSON.parse(theRequest.data);
6. 现在再打点调用
	id=jsonObj.id;

ps:
如果url后参数不是对象是字符串就不用执行第五步,可以直接调用
如果第四步输出结果为{data:'{“id”:1,"name":"张三"}'就需要执行第五步
如果结果为{id: '1', name: '张三'}就不需要,直接调用即可

0

评论区