вопрос почему он работает ведь тут условие и есть код выполнение а после условия пусто...
А почему это он не должен работать?

Как же работает ваш код:
Сначала выполняется
display.textContent = display.textContent.slice(0, -1))
затем, присвоенное
display.textContent значение подставляется в if
Если оно истинно (
true) - ничего не выполняется, если ложно (
false), выполняется
elseВаш код можно переписать так, и ничего не изменится:
case '<=':
display.textContent = display.textContent.slice(0, -1);
if (display.textContent) { } else { display.textContent = '0'; }
break;
Или даже так:
case '<=':
display.textContent = display.textContent.slice(0, -1);
if (!display.textContent) { display.textContent = '0'; }
break;
Так понятнее?

Пользователь добавил сообщение 07 Июля 2024, 17:54:42:
Но я не рекомендую использовать присвоение в
if, если нет понимания, как оно работает и чего вы пытаетесь добиться
