首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否将CENTER const for CENTER数组更改为循环/迭代?

是否将CENTER const for CENTER数组更改为循环/迭代?
EN

Stack Overflow用户
提问于 2019-01-07 08:39:10
回答 1查看 47关注 0票数 0

我有一个可以工作的零食,它有一个辅助函数,使用const CENTER。

我正在尝试将const CENTER更改为具有大量坐标的CENTER数组,以便helper函数可以迭代/循环?通过所有的点。

代码语言:javascript
复制
    const { latitude, longitude, speed } = position.coords;
    const center = { latitude: 37.600530, longitude: -122.482629 };  //this is to change
    const { radius, distance } = this.calculateMeasurements(latitude, longitude, center);


    calculateMeasurements = (latitude, longitude, center) => {
    const radius = geolib.isPointInCircle(
      { latitude: latitude, longitude: longitude },
      { latitude: center.latitude, longitude: center.longitude },
      1000
    );
    const distance = geolib.getDistance(
      { latitude: latitude, longitude: longitude },
      { latitude: center.latitude, longitude: center.longitude }
    );
    console.log(radius, distance);
    return { radius, distance };
  }

我想放一个像这样的中心数组:它能工作吗?

代码语言:javascript
复制
    const center = [( id: 1, latitude: 34.3434656, longitude: -56.876456 ),
                    ( id: 2, latitude: 35.3434656, longitude: -57.876456 ),
                    ( id: 3, latitude: 36.3434656, longitude: -58.876456 ),
                    ( id: 4, latitude: 37.3434656, longitude: -59.876456 )];
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-07 08:59:31

它会工作得很好。使用map来循环你的数组,如下所示。在数组中使用对象元素时,不要忘记使用大括号。

代码语言:javascript
复制
const { latitude, longitude, speed } = position.coords;
const centers = [ // use curly brackets for js objects.
{ id: 1, latitude: 34.3434656, longitude: -56.876456 },
{ id: 2, latitude: 35.3434656, longitude: -57.876456 },
{ id: 3, latitude: 36.3434656, longitude: -58.876456 },
{ id: 4, latitude: 37.3434656, longitude: -59.876456 }];

const { radius, distance } = this.calculateMeasurements(latitude, longitude, center);

const results = centers.map(({id, lati: latitude, longi: longitude) => {
  return this.calculateMeasurements(latitude, longitude, {lati, longi});
});

console.log(`results[0] : ${results[0].radius}, ${results[0].distance}`);

calculateMeasurements = (latitude, longitude, center) => {
  const radius = geolib.isPointInCircle(
  { latitude: latitude, longitude: longitude },
  { latitude: center.latitude, longitude: center.longitude },
  1000);
  const distance = geolib.getDistance(
    { latitude: latitude, longitude: longitude },
    { latitude: center.latitude, longitude: center.longitude }
  );
  console.log(radius, distance);
  return { radius, distance };
}

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54067283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档