function factorial(n) { if (isFinite(n) && n > 0 && n == Math.round(n)) { // 有限的正整数 if (!(n in factorial)) // 没有缓存结果 factorial[n] = n * factorial(n - 1); return factorial[n]; // 返回缓存结果 } else { return NaN; } } factorial[1] = 1; factorial(3);
计算一个正整数的阶乘(JavaScript)
时间: 2024-10-22 11:01:18