Любое преимущество использования переменной с тильдой в JavaScript против -1?

Кроме небольшого выигрыша в производительности, есть ли преимущество использования!~ X как истинного по сравнению с проверкой, чтобы увидеть ~-1?

2 ответа

Там может быть разница для больших чисел. Поскольку вы ограничены 32-битным диапазоном, учтите следующее.

var x = Math.pow(2,32)-1; // 4294967295

console.log(~x); // 0

Итак, здесь вы получите 0 результат дает вам противоположное логическое преобразование, чем вы ожидаете.

Там нет поведенческой разницы. Используйте тот, который наиболее понятен для сценария, который вы реализуете.

Другие вопросы по тегам