写一个函数实现检测是否是回文
let str = 'abcdcba';
const plalindrome = function (str) {
let arr = str.split('')
let midIndex = Math.floor(arr.length / 2);
let left = arr.slice(0, midIndex);
let right = arr.slice(-midIndex).reverse()
let result = left.join('') === right.join('')
console.log(result, 'return')
return result;
}
plalindrome(str)
判断一个数是否是质数
const isPrime = (number) => {
if (number <= 1) return false
for (i = 2; i <= number - 1; i++) {
if (!(number % i)) {
return false
}
}
return true;
}
const isPrime2 = (num) => {
if (num <= 1) return false
let sqrtNum = parseInt(Math.sqrt(num));
for (i = 2; i <= sqrtNum; i++) {
if (num % i === 0) return false
}
return true;
}
const LessThanOneHundred = (num1, num2) => {
let primeList = [], i = num1;
while (i <= num2) {
prime2(i) ? primeList.push(i) : null
i++;
}
return primeList;
}
console.log(LessThanOneHundred(1, 100), 'LessThanOneHundred')
输入两个数,输出两个数中间的值
const midNum = (num1, num2) => {
let q = Math.random() * (num1 - num2)
return num1 - q;
}
console.log(midNum(-1, 0), 'randNum')
求 1 ... 100 的和
const sum = (start, end) => {
return (start + end) * (end - start + 1) / 2
}
console.log(sum(1, 100), 'sum')
const sum2 = (start, end) => {
let sum = 0, i = start;
while (i <= end) {
sum += i;
i++;
}
return sum;
}
console.log(sum2(1, 5), 'sum2')