经纬志
首页 / Turf.js / 使用示例

最近点查找

八个候选设施,一个随机移动的目标点。 每次移动都重新求最近点,并输出它在集合中的序号。

Turf.js 7.x · 更新 2026-10-27
源码与运行效果
运行效果

说明

候选点组成一个 FeatureCollection,目标点每次随机生成。 turf.nearestPoint 返回最近的要素副本, 它的 properties.featureIndex 就是该点在集合中的位置, 用它可以从原始数组里取回名称等信息。

var near = turf.nearestPoint(target, fc);
var seq = near.properties.featureIndex;

console.log('最近的是', candidates[seq].name);
console.log('距离', turf.distance(target, near, { units: 'kilometers' }));
字段含义
featureIndex最近点在输入集合中的序号,从 0 开始
distanceToPoint7.x 中的距离字段,单位公里;6.x 里叫 dist
properties原有属性会被保留,可与序号互相印证

示例没有直接读距离字段,而是重新调用 turf.distance, 这样既能自主选择单位,也不受版本间字段改名的影响。

最近点不等于路网可达点。直线距离最近的设施可能隔着一条河, 需要真实路径时应当接入路径规划服务,而不是把这个结果当导航依据。