如何根据用户输入使用数组中对象的多个属性?

How to use multiple properties of an object in an array depending on user input?

const cities = [
{
    id: 0,
    city: "Buenos Aires",
    country: "Argentina",
    codeIATA: "AEP",
    aeroName: "Aeroparque Internacional Jorge Newbery",
    coordX: 15,
    coordY: 36,
},
{
    id: 1,
    city: "El Calafate",
    country: "Argentina",
    codeIATA: "FTE",
    aeroName: "Aeropuerto Internacional Comandante Armando Tola de El Calafate",
    coordX: -49,
    coordY: -63,
},
]

let origin = parseInt(prompt("ID Origen"));
let destination = parseInt(prompt("ID Destino"));

在一个数组中,我有多个像上面的对象。通过输入 0 或 1 或我将拥有的任何对象 ID,用户将 select 一个对象作为起点,另一个对象作为目的地。我猜我必须将数字与对象内的索引或 ID 匹配到 select 它。

一旦对象被 select 编辑为起点和终点,我想 select 每个点的 coordX 和 coordY 并计算每个点之间的距离(我已经有了那个的公式)。我知道如何计算,但我很难根据用户 selects.

获取坐标

您可以使用cities.finddocumentation)查找用户输入id的城市对象:

const origin = 1;
const originCity = cities.find((city) => city.id === origin);