JavaScript - 找出最小的 n 位或更大的数字
我们需要编写一个 JavaScript 函数,其中第一个参数接收一个数字,比如 n,第二个参数接收一个数字数组。该函数应该返回一个最小的 n 位数字,该数字是数组中指定的所有元素的倍数。如果不存在这样的 n 位元素,那么我们应返回最小元素。
例如:如果数组为 −
const arr = [12, 4, 5, 10, 9]
对于 n = 2 和 n = 3,输出应为 180
示例
代码如下 −
const arr = [12, 4, 5, 10, 9]
const num1 = 2;
const num2 = 3;
const allDivides = (arr, num) => arr.every(el => num % el === 0);
const smallestMultiple = (arr, num) => {
let smallestN = Math.pow(10, (num - 1));
while(!allDivides(arr, smallestN)){
smallestN++;
};
return smallestN;
};
console.log(smallestMultiple(arr, num1));
console.log(smallestMultiple(arr, num2));输出
控制台中的输出如下 −
180 180
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP