Javascript 正在验证对象中的字符串

Javascript 正在验证对象中的字符串,javascript,Javascript,我有以下目标: var obj = { "id": 1, "name": "john", "creds": { "username": "abc@yopmail.com" }, "account": { "credit": { "number": "123456" }, "name": "accountName" } } 如何动态获取价值: 我希望通过将层次结构作为字符串传递来获取值 console.log("Username: ", obj["cre

我有以下目标:

var obj = {
 "id": 1,
 "name": "john",
 "creds": {
   "username": "abc@yopmail.com"   
 },
 "account": {
  "credit": {
   "number": "123456"
  },
  "name": "accountName"
 }
}
如何动态获取价值:

我希望通过将层次结构作为字符串传递来获取值

console.log("Username: ", obj["creds.username"]);
console.log("CreditNumber: ", obj["account.credit.number"]);
注意:对象可能有n个深的子对象


如果您希望通过
[]
将密钥用作字符串形式,
['account']
或您可以使用本机方式
obj.key.childKey
获取值,请为我提供此问题的动态解决方案

console.log("Username: ", myJson.creds.username);
console.log("CreditNumber: ", myJson.account.credit.number);


只需使用点符号访问值:

console.log("Username: ", myJson.creds.username);
console.log("CreditNumber: ", myJson.account.credit.number);

我不明白你的问题。您想要一种为您提供creds的for循环。username?@Luxor001:我想要通过将json层次结构作为string.myJson[creds][username]传递来获取值,其中creds=“creds”和username=“username”您在代码中没有使用json。这是一个JavaScript对象。JSON是对象、数组或值的字符串表示形式。您可以使用以下命令从对象获取值:console.log(“用户名:”,myJson[“creds”][“Username”]);log(“CreditNumber:,myJson[“account”][“credit”][“number”]);或者更简单:console.log(“用户名:”,myJson.creds.Username);log(“CreditNumber:,myJson.account.credit.number”);这就是答案,你应该“动态地”处理一个对象。如果我不能使用数组表示法,层次结构可能会很深。好的。你可以选择第一种。使用数组表示法还有另一个原因。
console.log("Username: ", myJson.creds.username);
console.log("CreditNumber: ", myJson.account.credit.number);