很多时候项目需要计算比例,限制上传,其实计算比例 就是约分,懂约分就很好写了
- 例如一个图片的分辨率是1280X720,那么这个图片的比例就是1280:720进行约分,也就是16:9。
- 例如一个图片的分辨率是800X600,那么这个图片的比例就是800:600进行约分,也就是4:3。
//m,n为正整数的分子和分母
function reductionTo(m, n) {
var arr = [];
if (!isInteger(m) || !isInteger(n)) {
console.log('m和n必须为整数');
return;
} else if (m<=0||n <= 0) {
console.log('m和n必须大于0');
return;
}
var a = m;
var b = n;
(a >= b) ? (a = m, b = n) : (a = n, b = m);
if (m != 1 && n != 1) {
for (var i = b; i >= 2; i--) {
if (m % i == 0 && n % i == 0) {
m = m / i;
n = n / i;
}
}
}
arr[0] = m;
arr[1] = n;
return arr;
}
//判断一个数是否为整数
function isInteger(obj) {
return obj % 1 === 0
}