Availability: |
| ||||||||
Property/method value type: | Number primitive | ||||||||
JavaScript syntax: | - | anOperand1 | anOperand2 | |||||||
Argument list: | anOperand1 | A numeric value | |||||||
anOperand2 | Another numeric value |
Performs a bit-by-bit OR of the 32-bit value derived from both operands.
Where a corresponding bit is 1 in either of the two operands, a 1 is inserted into the result. A zero is inserted only when neither operand has a 1 bit at that position.
The associativity is left to right.
Refer to the operator precedence topic for details of execution order.
The truth table shows the result of this operator for two Boolean primitive values:
This is applied to each corresponding bit pair in the operands.
<HTML> <HEAD></HEAD> <BODY> <SCRIPT> myValue1 = 0x00FF; myValue2 = 0xFF00; myValue3 = myValue1 | myValue2; document.write("Val 1 : " + binary32(myValue1) + "<BR>"); document.write("Val 2 : " + binary32(myValue2) + "<BR>"); document.write("OR : " + binary32(myValue3) + "<BR>"); // Binary convertor (ignore sign bit on MSIE) function binary32(aValue) { myArray = new Array(32); for(myEnum=0; myEnum<32; myEnum++) { if(aValue & Math.pow(2, myEnum)) { myArray[31-myEnum] = "1"; } else { myArray[31-myEnum] = "0"; } } return myArray.join(""); } </SCRIPT> </BODY> </HTML>
Prev | Home | Next |
Bitwise operator | Up | Bitwise OR then assign (|=) |
JavaScript Programmer's Reference, Cliff Wootton Wrox Press (www.wrox.com) Join the Wrox JavaScript forum at p2p.wrox.com Please report problems to support@wrox.com © 2001 Wrox Press. All Rights Reserved. Terms and conditions. |