你好,为什么我这个累乘器会造成卡死问题?

你好,为什么我这个累乘器会造成卡死问题?

// function factorial(n) {

//     // 累乘器

//     var result = 1;

//     for (var i = 1; i <= n; i++) {

//         result *= i;

//     }

//     return result;

// }




function factorial(a) {

var result = 1;

for (i = 1; a > i; a--) {

result *= a

}

return result

}




for(var i = 100; i<=999;i++){

var i_str = i.toString();//变成字符串

var a = Number(i_str[0])

var b = Number(i_str[1])

var c = Number(i_str[2]);

if( i == factorial(a)+factorial(b)+factorial(c)){

console.log(i)

}

}


单独使用自己的累乘器是没有问题,但是结合寻找喇叭花数之后就会页面卡死


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小李 2022-01-08 10:39:33

同学你好,首先要说的是代码逻辑是没有问题,出现卡死是因为使用到了过多的计算...这样导致了浏览器堆栈内存不够...出现的卡死现象。同学这里做了解就ok。祝学习愉快!

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师