Javascript 在URL之间对对象进行编码和解码

Javascript 在URL之间对对象进行编码和解码,javascript,url,encoding,Javascript,Url,Encoding,我正在尝试从url对对象进行编码和解码。对象的结构看起来是这样的 myObj = {"obj1": {"sub1" : 1, "sub2", "2"}, "obj2": {"sub1" : 1, "sub2", "2"}, "obj3": {"sub1" : 1, "sub2", "2"} } 所以我要做的是从url对它进行编码和解码-作为参考,这是为了保存一个“状态”。所以它对它进行编码,我有 encodeURIComponent(JSON.stringify(data));

我正在尝试从url对对象进行编码和解码。对象的结构看起来是这样的

 myObj =
 {"obj1": {"sub1" : 1, "sub2", "2"},
  "obj2": {"sub1" : 1, "sub2", "2"},
  "obj3": {"sub1" : 1, "sub2", "2"} }
所以我要做的是从url对它进行编码和解码-作为参考,这是为了保存一个“状态”。所以它对它进行编码,我有

 encodeURIComponent(JSON.stringify(data));
要解码,我有:

JSON.parse(decodeURIComponent(searchString));
然后使用Angulars

 $location.search();
设置并拉取url

在我将对象内部的值更改为对象本身之前,这一切都很正常,URL上只显示“object”,我无法从中提取任何数据。我需要一些帮助。基本的想法是-我只想能够保存并从url中提取这个对象。谢谢

更新:

似乎当我对一个新对象进行编码时,会得到这样的结果

   {{"obj1":{"sub1":true}}: true}
所以它对这个物体的反应非常奇怪

编辑:


经过进一步的研究,我想要的似乎是jquery的param(和deparam),但仅仅是javascript?

如果使用jquery完成任务,那么使用jquery有什么错?@tadman jquery没有错!我现在不使用它,所以最好不要把它带进来。@Donal非常感谢链接,我看到了serialize函数,还有反序列化吗?试试JSON.parse(string);