Чем оно отличается от true / false, и отличается ли оно вообще как-то?
truthy и falsy в JavaScript это что-то сродни терминам "равный" и "идентичный".
В логических конструкциях truthy и falsy ведут себя как обыкновенные true и false, так что при желании можете использовать это вместо дефолтных, привычных всем true и false, но особенность данных, скажем, ключевых слов, заключается в том, что данные термины собой могут подразумевать и другие значения.
Приведу вам табличку из справочника по данной теме:
Falsy значение Описание
"" или " Пустая строка, строковой тип
0 Ноль, числовой тип
null переменная, инициализированная пустым значением, тип object
undefined Неинициализированная переменная, тип undefined
false Само значение false логического типа
NaN Нечисло, тип числовой
К значениям truthy относятся все остальные