求几个数的最小公倍数就是先求出前两个数的最小公倍数,然后再把这个最小公倍数跟第三个数放在一起来求最小公倍数,如此类推...
1 var dbList = []; 2 3 //两个数的最小公倍数 4 function gcd(a,b){ 5 var minNum = Math.min(a,b),maxNum = Math.max(a,b),i=minNum,vper=0; 6 if(a ===0 || b===0){ 7 return maxNum; 8 } 9 10 for(;i<=maxNum;i++){ 11 vper = minNum * i; 12 if(vper % maxNum === 0){ 13 return vper; 14 break; 15 } 16 } 17 } 18 19 //求一个数组的最下公倍数 20 function gcds(arr){ 21 var onum = 0,i = 0,len = arr.length,midNum = 0; 22 for(;i<len;i++){ 23 onum = Math.floor(arr[i]);//去掉小数 24 midNum = gcd(midNum,onum); 25 } 26 return midNum; 27 } 28 29 console.log(gcds([2,5,8,21]))