代码片段 → JavaScript → 检查数字是偶数还是奇数 检查数字是偶数还是奇数 Chris Coyier on 2009 年 11 月 25 日 function isEven(value) { if (value%2 == 0) return true; else return false; }
为什么不直接
function isEven(value) {
return (value%2 == 0);
}
打印它是否是奇数或偶数同样重要……!!!但是逻辑非常好,简洁明了..!!
而 PHP 版本只需要一个额外的美元符号
function isEven($int){
return ($int%2 == 0);
}
在当今时代,我可以假设大多数 Web 开发人员使用 jQuery 或类似的 JavaScript 库。这些库内置了 isEven 等函数。
对于那些不使用这些库的人来说:很棒的代码段;)
我偶然发现 http://rindovincent.blogspot.com/p/javascript.html ,其中有一个简单的 Javascript 程序来查找数字是奇数还是偶数。经允许,我将相同的代码粘贴在这里。
var n = prompt(“输入一个数字来查找奇数或偶数”, “在这里输入你的数字”);
n = parseInt(n);
if (isNaN(n))
{
alert(“请输入数字”);
}
else if (n == 0)
{
alert(“该数字为零”);
}
else if (n%2)
{
alert(“该数字为奇数”);
}
else
{
alert(“该数字为偶数”);
}
太感谢你了.. 非常有用
:D
良好的语法
function isEven(value)
{
return /^\d+$/.test(value.toString()) ? (value%2 === 0 ? true : false ) : false;
};
// 轮到我了 =)
function isEven(value){
return isFinite(+value) && !(+value % 2)
}
function isOdd(n){
return 1&n;
}
我赢了吗?
是的,你赢了
这很好。但是 1&n 的含义是什么?你能解释一下吗?
这是一个按位 AND 操作。
参见:https://en.wikipedia.org/wiki/Bitwise_operation#AND
如果 n 是一个奇数,则 1&n 的结果始终为 1。
虽然已经过去 10 年了,但我现在才“偶然”发现这个…
是的 Pj,这是最好的也是最优雅的。
正如 marwils 已经写的那样,这是一个按位 AND 操作。
这意味着你只需要检查数字最右边 (*) 位的最右边字节 (**) 是否被设置。如果是,则为奇数,否则为偶数。
我感觉大多数今天的程序员都不了解“位”的概念,他们只处理对象和继承。这很好,毫无疑问,但不要忘记基础知识,即位 :-)
(*) 最右边,最左边,第一个,最后一个:这取决于你如何可视化字节以及/或它如何在处理器中实现。
(**) 对于 > 255 的数字也是如此,它们需要超过 1 个字节。
开始
读取 n
reminder=n/2
if (reminder=0)
打印“数字为偶数”
else
打印“数字为奇数”
停止
我读到 == 比较很危险,因为它会进行类型强制以进行比较,因此最佳做法是使用 ===,它将在左右两侧都完全相同的情况下返回 true。
通常,最佳做法是使用
===
,但在本例中,value % 2
保证返回一个整数或NaN
,这使得我们可以绝对知道我们在num % 2
或0
两侧比较的变量类型,但不能知道num
本身的类型。问题在于,如果你不小心得到一个
false
或true
作为输入,它在使用%
运算符时会松散地转换为0
或1
。如果false
返回true
,这可能会导致代码出现一些问题。你通常会使用相等运算符 (===
) 进行此比较,但由于布尔值在%
运算符上被转换为数字,因此相等运算符在这里不起作用,因为大多数人已经键入了该函数。鉴于该函数使用的未知性质,以及它的名称,我认为以下内容可以安全使用
或者对于那些喜欢可读代码的人
@Evan 说得对
此外,不难说 == 比 === 快,所以如果你知道自己在做什么,在适用时使用 == 会更快
但如果你不确定,请使用 ===
干杯
include<stdio.h>
include<conio.h>
main()
{
int n;
clrscr();
printf(“输入一个数字:\n”);
scanf(“%d”,&n);
if(n%2==0)
{
printf(“偶数”);
}
else
{
printf(“奇数”);
}
getch();
}
嗨
我只是想知道
方程式 “(n % 2 == 0)” 到底做了什么?
奇数和偶数语法
奇数语法是
有了 Even 函数…
如果“value”不是十进制数怎么办?
var a;
var b=”ODD”;
var c=”EVEN”;
a=parseInt(window.prompt(“输入值:”));
document.write(“您的值为:”,chk(a));
function chk(a)
{
if (a%2==0)
return c;
else
return b;
}
function isEven(value) {
return !x%2;
}
这是一篇博客文章,它对测试数字是奇数还是偶数的几种方法进行了基准测试
http://blogs.davelozinski.com/curiousconsultant/csharp-net-fastest-way-to-check-if-a-number-is-odd-or-even
实际上,除了你列出的两种方法之外,还有很多方法可以做到这一点。令人惊讶的是,最快的似乎是模运算符 %,它甚至超过了按位与运算符 &,如下所示
对于那些好奇的人来说,这绝对值得一读。
如何编写一个函数,它接收一个数字,如果该值大于零且为奇数,则返回 true 或 false?
或者我们可以使用按位 AND 运算符。
function oddOrEven(x) {
return ( x & 1 ) ? “odd” : “even”;
}
将数组元素排序,偶数在前,奇数在后。 (document.write 并使用提示输入值)(Javascript)请帮帮我..
我经常使用模运算符... 例如在 BED 中,用于记录进度
if (0 === processed % 1000) {
sprintf(“已处理 %s 条记录”, processed)
}
7 种简单的方法来判断一个数字是奇数还是偶数。
http://www.waytosmart.com/tutorials/c-programming/c-program-to-check-odd-or-even-number-easy-ways.php
这些代码应该在哪里输入,以及在哪里查看数字是奇数?请告诉我,各位。
嗨,@mahnoor,
此代码片段应插入您在网站上提供的任何 JavaScript 文件中。
干杯!
或者你可以试试这样...
快速跟进:如果您的系统不支持 ES6,您可能还需要使用 Babel (https://babel.node.org.cn/)。谢谢! A
您甚至可以通过以下方式将其缩短:
// 更改
number
的值来测试您的代码// 如果 number 等于 1,则应将奇数打印到控制台。
// 如果 number 等于 2,则应将偶数打印到控制台。
var number = 2;
if (number%2===1) {
console.log(“奇数”)
} else{
console.log(“偶数”);
}
有人可以解释一下 2===0 的含义或工作原理吗?
三个等号
===
是一个“严格”比较运算符。它会评估两边内容是否相同。如果相同,则返回 true;如果不相同,则返回 false。在本例中,2 不等于 3,因此它将返回 false。