rexrjd, как вариант...
function persistence(num,res) {
var N = String(num);
var sum = 1;
alert(++res+'. start '+N);
for(var i = 0; i<N.length; i++) {
sum = sum * Number(N.charAt(i));
};
if (String(sum).length != 1) {
res=persistence(sum,res);
};
return res;
};
a = persistence(39,0);
alert(a);