admin管理员组文章数量:1426072
I am storing a json
first in localstorage
and then again storing it in final json
but I am getting extra backslash
in my final json
. My code is:
<!DOCTYPE html>
<html>
<body>
<script>
var mi = [{
"name": "Alex",
"address": "abc"
},
{
"name": "George",
"address": "efg"
}
]
localStorage.setItem("myData", JSON.stringify(mi))
var FinalJson = {
"Collected values" : localStorage.getItem("myData"),
"Place" : "washington"
};
document.write(JSON.stringify(FinalJson));
</script>
</body>
</html>
Output I am getting is:
{"Collected values":"[{\"name\":\"Alex\",\"address\":\"abc\"} {\"name\":\"George\",\"address\":\"efg\"}]","Place":"washington"}
Where am i going wrong that I am getting this extra backslash
. How can I remove the extra backslashes
? P.S. I don't want to directly store the variable mi
in my FinalJson
, as it contains some more plicated values which I have removed here for simplicity.
I am storing a json
first in localstorage
and then again storing it in final json
but I am getting extra backslash
in my final json
. My code is:
<!DOCTYPE html>
<html>
<body>
<script>
var mi = [{
"name": "Alex",
"address": "abc"
},
{
"name": "George",
"address": "efg"
}
]
localStorage.setItem("myData", JSON.stringify(mi))
var FinalJson = {
"Collected values" : localStorage.getItem("myData"),
"Place" : "washington"
};
document.write(JSON.stringify(FinalJson));
</script>
</body>
</html>
Output I am getting is:
{"Collected values":"[{\"name\":\"Alex\",\"address\":\"abc\"} {\"name\":\"George\",\"address\":\"efg\"}]","Place":"washington"}
Where am i going wrong that I am getting this extra backslash
. How can I remove the extra backslashes
? P.S. I don't want to directly store the variable mi
in my FinalJson
, as it contains some more plicated values which I have removed here for simplicity.
- It's just escaping the string, try parsing the data back and see if it resolves it self, as you're probably not planning on just throwing the JSON out on the page as a string ? – adeneo Commented Jan 12, 2014 at 21:01
-
1
Oh, it's double stringified, do
"Collected values" : JSON.parse(localStorage.getItem("myData"))
– adeneo Commented Jan 12, 2014 at 21:02
2 Answers
Reset to default 4It's stringified twice
var FinalJson = {
"Collected values" : JSON.parse(localStorage.getItem("myData")),
"Place" : "washington"
};
http://jsfiddle/Kh5Br/
var mi = [{
"name": "Alex",
"address": "abc"
},
{
"name": "George",
"address": "efg"
}
];
localStorage.setItem("myData", JSON.stringify(mi))
var tes = JSON.parse(localStorage.getItem("myData")); //It was "work". I thougt you missed that
var FinalJson = {
"Collected values" : tes,
"Place" : "washington"
};
document.write(JSON.stringify(FinalJson));
document.write(tes);
本文标签: javascriptUnwanted backslash in json when stored in localstorageStack Overflow
版权声明:本文标题:javascript - Unwanted backslash in json when stored in localstorage - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1745422336a2657956.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论