Почему так 👇



setTimeout и setInterval являются асинхронными, поэтому в данном случае вызовутся не сразу и не по порядку.



Через 200 миллисекунд первый раз вызовется
setInterval. Затем он будет вызываться каждые 200 миллисекунд, и пока x будет true, переменная count будет увеличиваться на 1 и выводиться в консоль.



А через 2 секунды вызовется
setTimeout, в котором x станет false, и условие в setInterval перестанет выполняться.