gpt4 book ai didi

javascript - JSON连接数据之间如何进行操作?

转载 作者:行者123 更新时间:2023-11-29 18:07:31 25 4
gpt4 key购买 nike

假设我有两个 JSON 字符串:

json1 = [{"hc-key":"ar-tf","value":221},{"hc-key":"ar-ba","value":10820},{"hc-key":"ar-sj","value":230}]

json2 = [{"hc-key":"ar-ba","value":2890151},{"hc-key":"ar-sj","value":15625084},{"hc-key":"ar-tf","value":367828}]

我想做的是通过"hc-key" 将它们连接到一个新的 JSON 字符串中,其中新的 "value" 是结果将 json1 中的值除以 json2 中的值。在 JavaScript 中。

请注意,json2 中的数据顺序与 json1 中的顺序不同,但它们具有完全相同的键。

生成的 JSON 应该是:

 result = [{"hc-key":"ar-ba","value":10820/2890151},{"hc-key":"ar-sj","value":230/15625084},{"hc-key":"ar-tf","value":221/367828}]

(为了清楚起见,我省略了结果值)

谢谢。

最佳答案

Robert 是正确的,连接在服务器端更好,但你想做的事当然可以只使用一些 JavaScript 循环。

对于这个例子,我没有费心处理错误,但我也建议在除法之前确认你有实数,并且你没有被零除。

var json1 = [
{"hc-key":"ar-tf","value":221},
{"hc-key":"ar-ba","value":10820},
{"hc-key":"ar-sj","value":230}];

var json2 = [
{"hc-key":"ar-ba","value":2890151},
{"hc-key":"ar-sj","value":15625084},
{"hc-key":"ar-tf","value":367828}];

var result = [];

for(var i = 0; i < json1.length; i++)
{
var key = json1[i]['hc-key'];
for(var j = 0; j < json2.length; j++) {
if(json2[j]['hc-key'] == key) {
result.push({
"hc-key":key,
"value": json1[i]['value'] / json2[j]['value']
});
break;
}
}
}

//show results
var key, value;
var $results = $('.results tbody');

for(var i = 0; i < result.length; i++)
{
key = result[i]['hc-key'];
value = result[i]['value'];
$results.append('<tr><td>' + key + '</td><td>' + value + '</td></tr>');
}
td {
padding-right: 15px;
text-align: left;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<b>results:<b>

<table class="results">
<tbody></tbody>
</table>

关于javascript - JSON连接数据之间如何进行操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30200821/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com