我想使用允许您传递要更改的键(pName)的函数来更改json对象内的值
var users = {
john: {
read: true,
write: false
},
mike: {
read: true,
write: false
}
}
var chgPermission = function (userName, pName, pValue) {
if (users[userName]) {
users[userName].pName = pValue;
} else {
console.log(`Could not find: ${userName}`)
}
}
chgPermission("mike", "write", true)
这不起作用,因为它查找的是users [username] .pName(不存在)而不是users [userName] .write
要使该函数允许我更改传入的键的值,我需要做些什么。
谢谢
答案 0 :(得分:2)
我认为您想要这样的东西:
var chgPermission = function (userName, pName, pValue) {
if (users[userName]) {
users[userName][pName]= pValue;
} else {
console.log(`Could not find: ${userName}`)
}
}
答案 1 :(得分:1)
只需将users[userName].pName
更改为users[userName][pName]
。