代码:
var string = JSON.stringify(stringValue);
var objectValue = JSON.parse(string);
输出:
{User1:{…}} User1:公司名称:“ qwe” DriverName:“ Tata Sky” LicenseKey:“ TATAA-0ITG6-BRHRL-UGT3E” LicenseType:“演示” MACID:“” 状态:“假”
这是背景,有时会变成user1,user2,并很快取决于search.on。一旦获得对象,我需要更新状态和MACID字段。 尽管用户1,用户2,如何创建对该字段的动态引用……我必须能够访问状态和macid字段。
预先感谢
答案 0 :(得分:0)
如果您询问如何访问JavaScript对象中的未知动态键:
var object = {User1: {CompanyName : "qwe", DriverName : "Tata Sky", LicenseKey : "TATAA-0ITG6-BRHRL-UGT3E", LicenseType : "Demo", MACID : "", Status : "False"}};
var user = object[Object.keys(object)[0]];
console.log(user);
所以这里的键是var user = object[Object.keys(object)[0]]
,它查找JavaScript object
中第一个键的值。
由于您使用firebase
进行了标记,因此我认为此值可能来自Firebase实时数据库。在这种情况下,另一种方法是使用DataSnapshot.forEach
方法循环遍历从读取操作返回的快照的子级。例如
firebase.database()
.ref("users")
.orderByChild("CompanyName")
.equalTo("qwe")
.once("value")
.then(function(snapshot) {
snapshot.forEach(function(userSnapshot) {
console.log(userSnapshot.key); // "User1"
console.log(userSnapshot.val().Status); // "False"
userSnapshot.ref.update({ MACID: 1234, Status: "Yes" });
});
})