В JavaScript преобразование чисел в логические значения может иметь несколько решений. Важно понимать, какое булевое значение вы хотите получить в зависимости от числа: либо число, равное 0 или NaN должно быть преобразовано в false, либо любое отрицательное число будет false.
Рассмотрим возможные способы реализации задачи.
Boolean()
Объект Boolean() позволяет преобразовать число в булевый тип данных. В зависимости от значения числа, мы получим следующие результаты:
Boolean(1); // true
Boolean(-2.23); // true
Boolean(0); // false
Boolean(-0); // false
Boolean(NaN); // false
Двойное отрицание (!!)
Способ заключается в том, что мы преобразуем число в логическое значение с помощью оператора ! и инвертируем результат.
!!1; // true
!!-2.23; // true
!!0; // false
!!-0; // false
!!NaN; // false
Условный оператор
Если нам необходимо все отрицательные числа преобразовать в false, а неотрицательные в true, достаточно воспользоваться условным оператором.
let num1 = 1;
let num2 = -2.23;
let num3 = 0;
let num4 = -0;
console.log(num1 < 0); // => false
console.log(num2 < 0); // => true
console.log(num3 < 0); // => false
console.log(num4 < 0); // => false