А что именно не работает?
Но так правильнее будет
let sum = () => {
let a, b;
const proverka = x => x.length > 0 && !isNaN(+x);
do {
a = prompt("Введите первое число");
if (a===null) return false;
} while (! proverka(a.trim()))
do {
b = prompt('Введите второе число');
if (b===null) return false;
} while (! proverka(b.trim()))
a -= 0;
b -= 0;
alert (a === b ? 'Числа равны' : a < b? 'Первое число больше второго' : 'Второе число больше первого');
return true;
}
while (sum());