2

我查询了 dynamo db,它返回了一个这样的字符串。

    { Item: 
       { password: 
          { S: 
          '$2a$10$..G.xCxVinjZQUGHxJF9a.6dSuChgOfPB0M1WjF4mrY5z7g4Gojae' 
       },
       role: { 
           S: 'hr' 
       } 
     } 
   }

从这个字符串中,我想去掉不同变量中的密码和角色,我该怎么做?

发电机数据库查询是这样的。

var opts = {
  'ConsistentRead': true,
  'AttributesToGet': ['role', 'password'],
  TableName : 'users',
  Key : {
    "userid" : {
      "S" : usrname
    }
  }
};
4

2 回答 2

1

你可以只使用 . 连接不同的层。

值 Object 有一个孩子:Item。
项目对象有两个子密码和角色。
密码对象有一个孩子 S。可能表示它的值是字符串类型。
S 对象有一个值,一个字符串

因此,要获取密码,您需要沿着树的路径工作。

value.Item.password.S

var value =  { Item: 
       { password: 
          { S: 
          '$2a$10$..G.xCxVinjZQUGHxJF9a.6dSuChgOfPB0M1WjF4mrY5z7g4Gojae' 
       },
       role: { 
           S: 'hr' 
       } 
     } 
   }
   
var password = value.Item.password.S;
var role = value.Item.role.S;
console.log(password, role);

于 2018-08-03T09:53:32.583 回答
1

var json = '{"result":true, "count":42}';
obj = JSON.parse(json);

console.log(obj);

于 2018-08-03T10:37:28.477 回答