Добрый день. Ваша проблема в том, что вы изменяете переменную poly, а потом сравниваете ylop с изменённым значением, который равен 0. Так как у меня в с математикой плохо, я исправил это так:
var poly = 1591;
var ylop = "";
var test = poly;
var isPalindrome = false;
var counter = 1;
var step = 0;
while( poly != 0){
if(step>=0){
counter= Math.pow(10,step);
}
ylop+=poly%10;
poly = Math.floor(poly / 10);
step++;
}
console.log("ylop = " + ylop);
console.log("test = " + test);
if(test == +ylop){
isPalindrome = true;
}
Спасибо за объяснение ошибки. К сожалению, предложенный вариант тоже не проходит тест, хотя переменная poly уже и не 0. *Ваш вариант будет рабочим только если число из 4 цифр насколько я понимаю, и если в середине нету проблем. например число 125621 уже тест не пройдет.
var poly = 1591;
var ylop = "";
var test = String(poly);
var isPalindrome = false;
for (var i = test.length - 1; i >= 0; i--) {
ylop += test[i];
}
if (ylop == test) isPalindrome = true;