8

下面的帖子让我评估了使用 jasonpatch 进行 json 到 json 转换:

JSON 到 JSON 转换器

该项目可以在这里找到:

https://github.com/bruth/jsonpatch-js

我目前正在尝试更改数组中所有元素的名称,但没有看到这是怎么可能的。我目前的尝试是:

var transformations = [
{ op: 'move', from:'/hits/1/_id', path: '/hits/1/pizza'}
];

这交换了第一个元素,但我如何进行“*”卡片类型的操作?就像是:

var transformations = [
{ op: 'move', from:'/hits/*/_id', path: '/hits/*/pizza'}
];

我可以看到可能为每个元素调用转换 N 次,但这似乎是一个 hack。

4

1 回答 1

3

最终使用了一种方法,我将调用包装在一个循环中:

 for(i=0;i<json.hits.length;i++) {
    var transformations = [{ op: 'move', from:'/hits/'+i+'/_id', path:'/hits/'+i+'/pizza'}];
    var result = jsonpatch.apply(json,transformations);             
 }

也许 jsonpatch 可以使用通配符功能?

于 2013-04-17T00:54:26.547 回答