我想弄清楚我是否 JSON.Stringify 像这样的对象:
{"m_id":"xxx","record":
{"USER":"yyy","PWD","zzz","_createdAt":
11111."_updatedAt":00000},"state":"valid"}
然后尝试 JSON.Parse 仅 USER 和 PWD,不必只调用对象,而是通过 stringify。那将如何工作?
谢谢。
我想弄清楚我是否 JSON.Stringify 像这样的对象:
{"m_id":"xxx","record":
{"USER":"yyy","PWD","zzz","_createdAt":
11111."_updatedAt":00000},"state":"valid"}
然后尝试 JSON.Parse 仅 USER 和 PWD,不必只调用对象,而是通过 stringify。那将如何工作?
谢谢。
我不确定您为什么要谈论对对象进行字符串化。如果您需要通过网络或其他方式发送数据,而不是当您需要在 JS 中操作它时,您会对其进行字符串化。
...我如何提取字符串
{...USER: "aaa", PWD: "zzz"...}
?
假设您有一个引用该对象的变量,如下所示(有或没有漂亮的换行符和缩进以使其可读,并且在属性名称周围有或没有引号):
var obj = {
"m_id": "xxx",
"record": {
"USER": "yyy",
"PWD" : "zzz",
"_createdAt": 11111,
"_updatedAt": 00000
},
"state": "valid"
};
然后您可以访问嵌套record
对象中的属性,如下所示:
console.log( obj.record.USER ); // outputs "yyy"
console.log( obj.record.PWD ); // outputs "zzz"
// etc.
(注意:在您的问题中,您有两个拼写错误,一个逗号应该是 and 之间的冒号"PWD"
,"zzz"
一个点应该是11111
and之间的逗号"_updatedAt"
。不可能JSON.stringify()
产生您显示的字符串有这些错误。)
如果您想要字符串"USER"
等"PWD"
作为数组,请使用Object.keys
.
如果你想迭代它们,只需使用普通for
的in
枚举。
我可能误解了这个问题,但如果我认为它就是这样,请尝试使用
var tmp = JSON.parse(string_to_convert)
这应该足以将您的字符串转换为正确的 Javascript 对象
然后你可以做
for(var index in tmp){
console.log(tmp[index]);
}
这应该列出第一组属性的所有键。如果你想做一个嵌套的事情,那么对属性使用递归。希望这是有道理的...