Проблема: сначала вы определяете логику для интервала, а затем проверяете переменную count2. Но в этом контексте переменная по-прежнему имеет значение 0.
Каждый раз, когда запускается интервал (и в большинстве случаев он идет после проверки if), выполняется только часть внутри блока function () {}
function() {
// I wrote this on two lines for clarity.
++count;
count2 = count;
}
и оно не продолжается в операторе if, потому что оно не является частью интервальной логики.
Первая идея, которую я имею, - поместить оператор if в блок function () {} следующим образом:
var count = 0, count2 = 0;
setInterval(function() {
// I wrote this on two lines for clarity.
++count;
count2 = count;
if(count2 == 5)
{
alert('testing script');
}
}, 1000);