加
const sum = (m, n) => {
m = Array(m + 1).join('#');
n = Array(n + 1).join('#');
return m.replace(/$/, n).length;
};
sum(3, 2); // 5
减
const diff = (m, n) => {
m = Array(m + 1).join('#');
n = Array(n + 1).join('#');
return m.replace(n, '').length;
};
diff(3, 2); // 1
乘
const product = (m, n) => {
m = Array(m + 1).join('#');
n = Array(n + 1).join('#');
return m.replace(/\#/g, n).length;
};
product(3, 2); // 6
除
const division = (m, n) => {
m = Array(m + 1).join('#');
n = Array(n + 1).join('#');
return m.replace(new RegExp(n, 'g'), '#').length;
};
division(6, 2); // 3
余
const remainder = (m, n) => {
m = Array(m + 1).join('#');
n = Array(n + 1).join('#');
return m.replace(new RegExp(n, 'g'), '').length;
};
remainder(7, 2); // 1
平方
const square = (m) => {
m = Array(m + 1).join('#');
return m.replace(/./, m).length;
};
square(2); // 4
奇偶性
const isOdd = (m) => {
m = Array(m + 1).join('#');
return /^.(.{2})+$/.test(m);
};
isOdd(2); // false
素数
const isPrime = (m) => {
m = Array(m + 1).join('#');
return /^(?!(.{2,})\1+$)(?=.{2,}$)/.test(m);
};
isPrime(2); // false
最大公约数
const greatestCommonDivisor = (n, m) => {
n = Array( n + 1).join('#')
m = Array( m + 1).join('#')
return (`${n}-${m}`).match(/^(.+)\1*-\1+$/)[1].length
}
greatestCommonDivisor(12, 8); // 4
来源:CSDN
作者:谛听
链接:https://blog.csdn.net/HH921227/article/details/104029200