Lodash предлагает два интересных метода: isUndefined и isNull. Допустим, у вас есть числовая переменная, которую вам нужно проверить, установлена ли она, чтобы использовать ее. Сделать это можно так:
someNumber:number;
......
if (_.isUndefined(someNumber) || _.isNull(someNumber)) {
console.info('not set');
}
Это работает нормально, но мне интересно, есть ли разница в том, как это было сделано в первом примере, и если это делается так
if (!someNumber) {
console.info('not set');
}





да. В вашем случае, если someNumber - это 0, тогда условие не выполняется. Но isUndefined и isNull пройдут, если значение равно 0
0 и NaN проходят первый тест и не проходят второй тест.
И, что неважно, для "неустановленного" корпуса это должен быть if (!someNumber).
Забавный факт: typeof NaN все еще остается номером.