Выполнение проверки массива
Здраствуйте
Хочу сделать проверку месяцев, чтобы тест прверялся и выдавал желаемый результат, но не до конца понимаю как это сделать Пробовал пойти через typrof, но не вышло Прошу помочь с кодом
// Функция возвращает название месяца по его номеру.
// Например getMonthName(1) должен вернуть строку "Январь".
// В случае, если месяца с таким номером нет, возвращается null.
function getMonthName(index) {
}
export { getMonthName };
import { getMonthName } from "./index";
it("Проверка существующего месяца", () => {
expect(getMonthName(1)).toBe("Январь");
expect(getMonthName(2)).toBe("Февраль");
expect(getMonthName(3)).toBe("Март");
expect(getMonthName(4)).toBe("Апрель");
expect(getMonthName(5)).toBe("Май");
expect(getMonthName(6)).toBe("Июнь");
expect(getMonthName(7)).toBe("Июль");
expect(getMonthName(8)).toBe("Август");
expect(getMonthName(9)).toBe("Сентябрь");
expect(getMonthName(10)).toBe("Октябрь");
expect(getMonthName(11)).toBe("Ноябрь");
expect(getMonthName(12)).toBe("Декабрь");
});
it("Проверка несуществующего месяца", () => {
expect(getMonthName(-1)).toBeNull();
expect(getMonthName(15)).toBeNull();
expect(getMonthName("дерево")).toBeNull();
});
|
Tri,
function getMonthName(index) {
return {1 : 'Январь', 2 : 'Февраль', ...}[index] || null
}
|
Tri,
если хочется погорячее)))
let months = {
"1": "Январь",
"2": "Февраль",
"3": "Март",
"4": "Апрель",
"5": "Май",
"6": "Июнь",
"7": "Июль",
"8": "Август",
"9": "Сентрябрь",
"10": "Октябрь",
"11": "Ноябрь",
"12": "Декабрь"
}
months = new Proxy(months, {
get(target, key) {
if (key in target) {
return target[key];
} else {
return null;
}
}
});
function getMonthName(index) {
return months[index]
}
alert(getMonthName(-1));
alert(getMonthName(12));
alert(getMonthName("дерево"));
|
| Часовой пояс GMT +3, время: 16:54. |