当前位置: 首页 > 工具软件 > Happy.js > 使用案例 >

happy number--JavaScript

松和泰
2023-12-01

这道题的关键在于对程序进入死循环时的处理~

var isHappy = function(n) {
    if(n<1)
        return false;
    var tmp=(n+"").split('');   //将n的每一个数字拆分存到数组(从高位到 低位存储)
    var res=0;
    var loop=[n];
    while(res!=1){
        res=0;
        for(i=0;i<tmp.length;i++){
            res+=Math.pow(parseInt(tmp[i]),2);
        }
        tmp=(res+"").split('');
        if(loop.indexOf(parseInt(res))!=-1 && res!=1)
            return false;
        loop.push(res);
    }
    return true;
};

 类似资料: