谁能告诉我一些代码,以确定一个数字在JavaScript是偶数还是奇数?
当前回答
一个可以传递的简单函数。使用模运算符%:
var is_even = function(x) {
return !(x % 2);
}
is_even(3)
false
is_even(6)
true
其他回答
另一个使用filter()方法的例子:
let even = arr.filter(val => {
return val % 2 === 0;
});
// even = [2,4,6]
现代javascript中更函数化的方法:
const NUMBERS = "nul one two three four five six seven ocho nueve".split(" ")
const negate = f=> (...args)=> !f(...args)
const isOdd = n=> NUMBERS[n % 10].indexOf("e")!=-1
const isEven = negate(isOdd)
若为奇数则返回true
function isOdd(n) {
return Math.abs(n)%2===1;
}
如果为偶数则返回true
function isEven(n) {
return Math.abs(n)%2!==1;
}
我使用Math.abs()以防得到负数
这可以用一小段代码来解决:
function isEven(value) {
return !(value % 2)
}
希望这对你有所帮助。
这适用于数组:
function evenOrOdd(numbers) {
const evenNumbers = [];
const oddNumbers = [];
numbers.forEach(number => {
if (number % 2 === 0) {
evenNumbers.push(number);
} else {
oddNumbers.push(number);
}
});
console.log("Even: " + evenNumbers + "\nOdd: " + oddNumbers);
}
evenOrOdd([1, 4, 9, 21, 41, 92]);
这应该注销: 4, 92 1、9、21日,41岁
对于一个数字:
function evenOrOdd(number) {
if (number % 2 === 0) {
return "even";
}
return "odd";
}
console.log(evenOrOdd(4));
这甚至应该输出到控制台