Javascript 将JSON对象转换为数字字符串,反之亦然
(如果有人问过类似的问题,我很抱歉,我找不到) 基本上,我有一个JSON对象,大约有10个属性(固定数量),其中包含一个没有用户系统的应用程序的个人设置,我希望用户能够获得一个代码,将每个属性的正确值转换为该对象。这样,他们就可以使用永久链接使用自己的设置访问应用程序 问题是:是否有一种方法或特定的技术可以将JSON序列化对象(即JSON字符串)转换为数字或十六进制代码?我见过几个网站从用户的角度做了类似的事情 因为我有一组有限的属性和可能的值,所以我的方法是对字符串进行硬编码(例如,如果属性1的值为x,字符串中的第一个字符为1,如果它的值为y,那么它的值为2,等等),但我想知道是否有最适合这种情况的方法。让我们这样做吧Javascript 将JSON对象转换为数字字符串,反之亦然,javascript,json,Javascript,Json,(如果有人问过类似的问题,我很抱歉,我找不到) 基本上,我有一个JSON对象,大约有10个属性(固定数量),其中包含一个没有用户系统的应用程序的个人设置,我希望用户能够获得一个代码,将每个属性的正确值转换为该对象。这样,他们就可以使用永久链接使用自己的设置访问应用程序 问题是:是否有一种方法或特定的技术可以将JSON序列化对象(即JSON字符串)转换为数字或十六进制代码?我见过几个网站从用户的角度做了类似的事情 因为我有一组有限的属性和可能的值,所以我的方法是对字符串进行硬编码(例如,如果属性1
设置
是我用于测试的对象
var setup = { "abc" : "asdasd",
"special" : "my wife hates me",
"Kids" : 7564
};
生成链接的函数:
function generateLinkWithSpecialSetup(setup) {
var str = JSON.stringify(setup);
var hash = "";
for(var i =0; i<str.length;i++) {
hash += str.charCodeAt(i).toString(16);
}
return "example.com/special-setup/#" + hash;
}
函数生成器带特殊设置(设置){
var str=JSON.stringify(设置);
var hash=“”;
对于(var i=0;我工作得很有魅力!现在我为让你编写我本可以自己编写的代码感到难过…谢谢!
function findSetupFromHash() {
var hash = window.location.hash.substring(1);
var str = hex2a(hash);
return JSON.parse(str);
}
function hex2a(hexx) {
var hex = hexx.toString(); //force conversion
var str = '';
for (var i = 0; i < hex.length; i += 2)
str += String.fromCharCode(parseInt(hex.substr(i, 2), 16));
return str;
}