js 比较两个json数组,去除重复元素

有如下两个json数组: a和b;

let a =[{
	"id": 1,
	"name": "姓名",
	"code": "name"
	"value":"zs"    //注意,b数组中id=1的元素没有该字段
}, {
	"id": 2,
	"name": "年龄",
	"code": "age"
}, {
	"id": 3,
	"name": "地址",
	"code": "addr"
}, {
	"id": 4,
	"name": "搜索",
	"code": "as"
}]

let b= [{
	"id": 1,
	"name": "姓名",
	"code": "name"
}]

需要比较两个数组中是否有重复的元素(数组元素的id值是唯一的,根据两个数组中元素id是否相等来判断是否重复),如果有则从a中删除,获得去重后的新数组;

//a和b中都具有id为1的元素,所以理想的结果是将a中id=1的元素删除掉,

//将b数据中的id取出赋给数组c
let c = b.map( i => i.id ) 
  //如果c中包含a数组某个元素的id,说明b数组中也有改元素,移除
let d = a.filter( i => !c.inclundes(i.id))

去重后的新数组d数组结果(可以看到id=1的元素已经成功删除):

[{
		"id": 2,
		"name": "年龄",
		"code": "age",
	},
	{
		"id": 3,
		"name": "地址",
		"code": "addr"
	},
	{
		"id": 4,
		"name": "搜索",
		"code": "as"
	}
]