有什么方法可以高效的join JSON数据吗?假设我们有两个 JSON 数据集:
{"COLORS":[[1,red],[2,yellow],[3,orange]]}
{"FRUITS":[[1,apple],[2,banana],[3,orange]]}
我想把它变成以下客户端:
{"NEW_FRUITS":[[1,apple,red],[2,banana,yellow],[3,orange,orange]]}
请记住,这里会有数以千计的记录,数据结构要复杂得多。 jQuery 和 vanilla javascript 都很好。还要记住,可能有没有水果的颜色和没有颜色的水果。
注意:为了简单起见,假设两个数据集的顺序相同,但第二个数据集可能有间隙。
最佳答案
Alasql JavaScript SQL 库在一行中完全满足您的需求:
<script src="alasql.min.js"></script>
<script>
var data = { COLORS: [[1,"red"],[2,"yellow"],[3,"orange"]],
FRUITS: [[1,"apple"],[2,"banana"],[3,"orange"]]};
data.NEW_FRUITS = alasql('SELECT MATRIX COLORS.[0], COLORS.[1], FRUITS.[1] AS [2] \
FROM ? AS COLORS JOIN ? AS FRUITS ON COLORS.[0] = FRUITS.[0]',
[data.COLORS, data.FRUITS]);
</script>
你可以玩this example在 jsFiddle 中。
这是一个 SQL 表达式,其中:
关于javascript - JSON 数据的 SQL 样式 JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7251163/