有没有办法获得价值
{
"first": "first-string",
"second-array": [
{
"first-Obj": 2
}
]
}
Run Code Online (Sandbox Code Playgroud)
有没有办法通过使用类似字符串的路径来获取或更新值
ex: to change the first-obj's value to 1000
changeTheValueAt('second-array/0/firstObj', 1000)
Run Code Online (Sandbox Code Playgroud)
是否有任何像上面的changeTheValueAt或方法的功能.
使用以下功能 -
function changeTheValueAt(obj, path, value) {
var parts = path.split("/"),
final = obj[parts[0]],
i;
for (i = 1; i < parts.length; i++) {
if (i + 1 < parts.length) {
final = final[parts[i]];
}
else {
final[parts[i]] = value;
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后像这样称呼它 -
var ob = {
"first": "first-string",
"second-array": [
{
"first-Obj": 2
}
]
};
changeTheValueAt(ob, "second-array/0/first-Obj", 1000)
alert(ob["second-array"][0]["first-Obj"]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
112 次 |
| 最近记录: |