我想知道我是否JSON.Stringify这样的对象:
{"m_id":"xxx","record":
{"USER":"yyy","PWD","zzz","_createdAt":
11111."_updatedAt":00000},"state":"valid"}
然后尝试JSON.Parse只有USER和PWD,不必只是调用对象,而是通过stringify。怎么会有用?
感谢。
答案 0 :(得分:3)
我不确定你为什么要谈论字符串化你的对象。如果您需要通过网络或其他东西发送数据,而不是在需要在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.
(注意:在您的问题中,您有两个拼写错误,一个逗号应该是"PWD"
和"zzz"
之间的冒号,而且一个点应该是逗号之间的逗号{ {1}}和11111
。"_updatedAt"
无法生成出现这些错误的字符串。)
答案 1 :(得分:0)
如果您希望字符串"USER"
,"PWD"
等作为数组,请使用Object.keys
。
如果您想迭代它们,只需使用普通for
-in
enumeration。
答案 2 :(得分:0)
我可能误解了这个问题,但如果我认为它是什么,那么尝试使用
var tmp = JSON.parse(string_to_convert)
这应该足以将您的字符串转换为正确的Javascript对象
然后你可以做
for(var index in tmp){
console.log(tmp[index]);
}
这应该列出第一组属性上的所有键。如果要执行嵌套操作,请在属性上使用递归。希望这是有道理的......