首页 > 解决方案 > 将数组中的两个对象组合成新对象?

问题描述

我正在编写一个脚本,我将文本文件“数据”转换为对象数组,随后将通过公用键“GEOID”将该数组加入到 Geojson。在“数据”中,我有两个对象 STATE_FIP 和 COUNTY_FIP。这两个组合将创建一个公共密钥来匹配“GEOID”。我需要以编程方式连接它们。有没有办法轻松做到这一点?下面是“数据”的屏幕截图,谢谢!

在此处输入图像描述

标签: arraysjsonleafletconcatenation

解决方案


给出的信息不多,但是……试试这个:

var additionalProps = {}

data.forEach(obj => {
    geoid = obj.STATE_FIP + obj.COUNTY_FIP
    additionalProps[geoid] = obj
})

var updatedGeoJson = {
    "type": "FeatureCollection",
    "features": []
  };

oldGeoJson.features.forEach(x => {
    geoid = x.properties.GEOID 
    newProps = {...x.properties, ...additionalProps[geoid]}
    x.properties = newProps
    updatedGeoJson.features.push(x)
})

推荐阅读