Javascript 获取周围的坐标
我有一个x,y坐标的仪表板,如下所示: 现在让我们假设我在Javascript 获取周围的坐标,javascript,arrays,object,ecmascript-6,coordinates,Javascript,Arrays,Object,Ecmascript 6,Coordinates,我有一个x,y坐标的仪表板,如下所示: 现在让我们假设我在4,4上,我想得到一个包含x,y的对象数组,每个坐标在4,4附近,范围为2 所以对象的输出数组类似于 [{x: 2, y: 2}, {x: 3, y: 2}, {x: 4, y: 2}, {x: 5, y: 2}, {x: 6, y: 2}, ...] (现在我看到图像上的x,y是另一个方向,对不起,错了) 我可以得到这样的x: const currentCoord = { x: 4, y: 4 }; const range = 2
4,4
上,我想得到一个包含x,y的对象数组,每个坐标在4,4附近,范围为2
所以对象的输出数组类似于
[{x: 2, y: 2}, {x: 3, y: 2}, {x: 4, y: 2}, {x: 5, y: 2}, {x: 6, y: 2}, ...]
(现在我看到图像上的x,y是另一个方向,对不起,错了)
我可以得到这样的x:
const currentCoord = { x: 4, y: 4 };
const range = 2;
const coordsAround = [];
for(let i = 0; i < range * 2; i++) {
coordsAround.push({x: currentCoord.x - range + i, y: currentCoord.y})
}
console.log(coordsAround)
const currentCoord={x:4,y:4};
常数范围=2;
常数coordsAround=[];
for(设i=0;i
但这远不是解决办法。那么,完成这项任务的最佳方法是什么呢?您需要循环检查
x
和y
两个值-并使用您可能需要注意边缘情况,例如:从0开始,0
将给您提供负数是@nickparson,但我不确定OP是否需要这样做(平面几何/坐标总是以负数结束)。是的,我不能得到负坐标,但我只是在内部循环中添加了如果(currentCoord.x-range+j>=0&¤tCoord.y-range+I>=0){
,它似乎工作得很好:很高兴看到我帮助@dopeCode!