js如何通过相同键值合并两个json数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js如何通过相同键值合并两个json数组相关的知识,希望对你有一定的参考价值。

var arr1 = [

id:12,
name:20
,

id:13,
name:30

];
var arr2 = [

id:12,
title:500
,

id:13,
title:666

];
已知 arr1的长度和arr2相等,arr1和arr2含有相同的键值id,使用js如何得到sum
var sum = [

id:12,
name:20,
title:500
,

id:13,
name:30,
title:666

];

参考技术A var arr1 = [
    id: 12,
    name: 20

    id: 13,
    name: 30
];
var arr2 = [
    id: 12,
    title: 500

    id: 13,
    title: 666
];
var sum = [];
for (var i = 0; i < arr1.length; i++) 
    var obj = 
        id: arr1[i].id,
        name: arr1[i].name,
        title: arr2[i].title
    ;
    sum.push(obj);

console.log(sum);

PHP常用函数

1 数组函数

1.1 创建数组

1.1.1 array_combine()

array_combine() 函数通过合并两个数组来创建一个新数组,其中的一个数组元素为键名,另一个数组的元素为键值。

语法:array_combine(keys,values)

参数:

keys:必需,规定数组的键名;

values:必需,规定数组的键值;

返回值:返回合并后的数组。如果两个数组的元素个数不相同,则返回 FALSE。

<?php
$keys = [‘张三‘, ‘李四‘, ‘王五‘];
$values = [34, 25, 44];
$arr = array_combine($keys, $values);
var_dump($arr); // array(3) { ["张三"]=> int(34) ["李四"]=> int(25) ["王五"]=> int(44) }

1.1.2 range()

range() 函数创建一个包含指定范围的元素的数组。

语法:range(low,high,step)

参数:

low:必需。规定数组元素的最小值。

high:必需。规定数组元素的最大值。

step:可选。规定元素之间的步进制。默认是 1。

返回值:返回一个包含从 lowhigh 的元素的数组。

注释如果 low 参数大于 high 参数,则创建的数组将是从 high 到 low。

<?php
$arr1 = range(0, 9);	// 创建一个0-9之间的数组;
$arr2 = range(a, z);	// 创建一个a-z之间的数组;
$arr3 = range(a, z, 10);	// 创建一个步长为10的a-z之间的数组;

1.1.3 compact()

compact() 函数创建一个包含变量名和它们的值的数组。

语法:compact(var1,var2...)

参数:

var1:必需。可以是带有变量名的字符串,或者是一个变量数组。

var2:可选。可以是带有变量名的字符串,或者是一个变量数组。允许多个参数。

返回值:返回带有所有变量名和它们的值的数组。

注释:任何没有变量名与之对应的字符串都被略过。

<?php
$firstname = ‘zhangsan‘;
$lastname = ‘lisi‘;
$age = ‘42‘;
$result = compact(‘firstname‘, ‘lastname‘, ‘age‘);	// 参数为变量字符串
var_dump($result);	// array(3) { ["firstname"]=> string(8) "zhangsan" ["lastname"]=> string(4) "lisi" ["age"]=> string(2) "42" }

$name = array(‘firstname‘, ‘lastname‘);
$result = compact($name, ‘location‘, ‘age‘);	// $name为变量数组。location没有对应的值
var_dump($result);	// array(3) { ["firstname"]=> string(8) "zhangsan" ["lastname"]=> string(4) "lisi" ["age"]=> string(2) "42" }

以上是关于js如何通过相同键值合并两个json数组的主要内容,如果未能解决你的问题,请参考以下文章

2020-12-30 两个数组合并并去重对象

如何在 React 中显示来自 JSON URL 数组的图像

js中new 了两个Object数组。怎么样将数组内容合并,重复的内容?

js020-JSON

js将两个json合并成一个,有啥好的方法

js怎么遍历我后台传过来的Map