You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Openlayers 6 如何读取GeoJSON文件中的嵌套属性字段值

你之前的写法出错是因为 OpenLayers 的 get() 方法仅支持直接提取 Feature 的顶层属性,无法解析你传入的嵌套属性路径字符串。所有 GeoJSON 中 properties 下的字段都会直接挂载为 OpenLayers Feature 的顶层属性,所以你可以先取出完整的 data 对象,再按照普通 JavaScript 对象的嵌套属性规则访问即可。


正确取值代码

分步骤写法(可读性更高)

// 拿到第一个城市要素
const targetFeature = dataLayer.getSource().getFeatures()[0];
// 取出顶层的data属性对象
const featureData = targetFeature.get('data');
// 访问stable分组下的y_1994值
const stableY1994 = featureData.stable.y_1994;

简写写法

const stableY1994 = dataLayer.getSource().getFeatures()[0].get('data').stable.y_1994;

兼容性优化

如果需要兼容data或者stable字段可能不存在的场景,避免抛出属性读取错误,可以使用可选链操作符:

const stableY1994 = dataLayer.getSource().getFeatures()[0].get('data')?.stable?.y_1994;

内容的提问来源于stack exchange,提问作者Pál Rudan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 13:21:01