按位“或”运算符 (|)
对两个表达式执行按位“或”result = expression1 | expression2参数
result任何变量。expression1任何表达式。expression2任何表达式。说明
| 运算符查看两个表达式的二进制表示法的值,并执行按位“或”操作。该操作的结果如下所示: 0101 (expression1)
1100 (expression2)
----
1101 (结果)
任何时候,只要任一表达式的一位为 1,则结果的该位为 1。否则,结果的该位为 0。
对两个表达式执行按位“或”result = expression1 | expression2参数
result任何变量。expression1任何表达式。expression2任何表达式。说明
| 运算符查看两个表达式的二进制表示法的值,并执行按位“或”操作。该操作的结果如下所示: 0101 (expression1)
1100 (expression2)
----
1101 (结果)
任何时候,只要任一表达式的一位为 1,则结果的该位为 1。否则,结果的该位为 0。
NaN|0 返回0
undefined|0 返回0<script>
function haha(pagenum){
var record=20;
var pageBegin=(record*(pagenum-1)+1)|0;
alert(pageBegin);
}
haha();//输出0
haha(10);//输出181
</script>
不过因为undefined去运算的时候会得出NaN, NaN ¦0 返回0 ~~~
这就是|的用意了~~