js一些数字方面的练习
Posted coderwhytop
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js一些数字方面的练习相关的知识,希望对你有一定的参考价值。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>js小练习</title> </head> <body> <script> //有时间自己写 数组的倒置转换方法;split, jion,记住js的精度丢失等问题 // 输入正整数返回他们的倒叙,比如123 => 321 function re(abc) { abc += \'\' var arr = abc.split(\'\'); abc = (arr.reverse()).join(\'\'); return abc } var j = re(12345); console.log(j); // 求目标值内逢7输出的所有数字和是7的倍数的所有数字 function seven(target) { var arr = []; for (let i = 0; i < target; i++) { if (i % 7 == 0 || i % 10 == 7) { arr.push(i) } } return arr; } var j = seven(100); console.log(j); //求num的n次幂,n可以输入 // 2的3次幂是8 function power(num, n) { var a = num; for (var i = 1; i < n; i++) { num = num * a } return num; } console.log(power(3, 2)); // 求n的阶层 function rank(n) { if (n <= 1) { return 1 } return n * rank(n - 1) } console.log(rank(3), \'阶乘\'); function rank(num) { var result = 1; while (num) { result *= num; num--; } return result; } console.log(rank(3), \'阶乘2\'); // 输入a b c返回出最大的数 // 不推荐写法,没有兼容性 特别是360和FireFox function maxNum(a, b, c) { // 不是因为arguments是类数组对象才不能使用sort方法,是因为sort兼容太差,所以js选择放弃arguments的sort API var arr = []; for (var i = 0; i < arguments.length; i++) { arr.push(arguments[i]) } return arr.sort()[arr.length - 1] } // 这里关键是infinity无限小,没有数不比无限小大 function arrMaxNum(a, b, c) { var arr = [a, b, c]; var maxNum = -Infinity, index = -1; for (var i = 0; i < arr.length; i++) { if (arr[i] > maxNum) { maxNum = arr[i]; index = i; } }; return { "maxNum": maxNum, "index": index }; } // console.log(maxNum(2, 4, 3)); console.log(arrMaxNum(2, 4, 3)); // 打印一百以内的质数,就是只被1和它自身整除的数 function prime(n) { // 小知识点:质数必须是大于1的 var arr = [] // 7 = 1 * 7 // 7 / 1 == 7 for (var i = 1; i < n; i++) { if (i % 2 != 0 && i % 3 != 0 && i % 5 != 0 && i % 9 != 0) { arr.push(i) } } return arr; } console.log(prime(100)); function getMax(a, b, c) { var max = -Infinity, index = -1; var arr = [a, b, c]; for (var i = 0; i < arr.length; i++) { if (arr[i] > max) { max = arr[i]; index = i; } } return { max, index } } console.log(getMax(10, 20, 15)); </script> </body> </html>
以上是关于js一些数字方面的练习的主要内容,如果未能解决你的问题,请参考以下文章