Я создал модуль и определил в нем функции. Иногда мне нужно проверить, действительно ли определенная функция уже создана.
Например
var newyork = function() {
console.info("newyork");
};
var washington = function() {
console.info("washington");
};
exports.newyork = newyork;
exports.washington = washington;
Теперь в другом файле я хочу сначала проверить, существует ли функция, например:
var cities = require('./city');
if (cities.newyork) {
console.info("city function exist");
}
else {
//false
}
@JonasW. действительно боже?
Да, Javascript является круто
@JonasW. Спасибо
@alexL ты действительно хочешь поспорить или ...? ;)



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


typeof cities.cityName === 'function'
если название города присвоено какой-то переменной
typeof cities[cityName] === 'function'
Как я сказал в комментариях, то, что вы написали, действительно работает, потому что
if (cities.newyork){
Проверяет, является ли cities.newyorkправдивый. Следующие вещи правдивы:
Однако, если он не определен, cities.newyork будет undefined, который является ложь (войдет в ветвь else)
«что-то вроде» действительно работает.