Получить данные о положении нашего солнца с помощью функции.Как? - PullRequest
0 голосов
/ 24 февраля 2019

Я использую mourner / suncalc , чтобы получить информацию о нашем солнце.Я хочу узнать, где будет находиться положение нашего Солнца, используя SunCalc.getTimes(), но чтобы не использовать переменные "миль в длину", я хочу вызывать все данные через функцию.

Я думаюпримерно так:

function sun_times(string) {
    var sun_times = SunCalc.getTimes(new Date(), 54.528486, -7.569268);
    return (sun_times.string.getHours().toString() < 10 ? '0' + sun_times.string.getHours().toString() : sun_times.string.getHours().toString());
}

console.log(sun_times('dawn'));

Этот пример возвращает (как и ожидалось) TypeError: sun_times.string is undefined.

Вместо ввода sun_times.dawn.getHours().toString() + ':' + sun_times.dawn.getMinutes().toString() для каждого времени на рассвете, в сумерках, золотом часе, надире,морской рассвет и т. д. Я просто хочу ввести функцию, а затем данные, которые я хочу распечатать, например sun_times('dawn').

Как я могу добиться этого наилучшим образом?

1 Ответ

0 голосов
/ 24 февраля 2019

Объект JavaScript работает как структура словаря.Мы используем оператор индексирования [] для доступа к свойствам, известным только во время выполнения.Это похоже на доступ к массиву, но со строками вместо чисел.

function sun_times(string) {
    var sun_times = SunCalc.getTimes(new Date(), 54.528486, -7.569268);
    return (sun_times[string].getHours().toString() < 10 ? '0' + sun_times[string].getHours().toString() : sun_times[string].getHours().toString());
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...