У меня есть метод get для получения данных из дерева JSON:
var tree = { user: [{ name: 'name1', email:'email1' }, {name: 'name2', email:'email2'}] };
getJSONNodeData(tree, 'user[1].name');
function getJSONNodeData(root, path) {
try {
return (new Function('root', 'return root.' + path + ';'))(root);
} catch (e) {return "JSON Error";}
}
Я хотел бы установить данные JSON с использованием аналогичного простого метода. Я ожидал, что это сработает:
function setJSONNodeData(root, path, newValue) {
return (new Function('root', 'return root.' + path + '=' + newValue +';'))(root);
}
Но это не работает? Почему и что будет? Get работает, а Set - нет.