Availability: |
| ||||||||
Property/method value type: | Number primitive | ||||||||
JavaScript syntax: | - | anOperand1 & anOperand2 | |||||||
Argument list: | anOperand1 | A binary bit pattern | |||||||
anOperand2 | Another binary bit pattern |
The result is the bitwise AND of both binary bit pattern values.
This operator performs a bit by bit AND of the 32-bit value derived from both operands. Effectively, each corresponding bit pair has a logical AND applied to it.
The truth table shows the result of this operator for two Boolean primitive values:
Where a corresponding bit is 1 in both values, a 1 bit is inserted into the result, otherwise the value is zero.
The associativity is left to right.
Refer to the Operator Precedence topic for details of execution order.
<HTML> <HEAD></HEAD> <BODY> <SCRIPT> myValue1 = 0xFFFF; myValue2 = 0xFF00; myValue3 = myValue1 & myValue2; document.write("Val 1 : " + binary32(myValue1) + "<BR>"); document.write("Val 2 : " + binary32(myValue2) + "<BR>"); document.write("AND : " + 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>
ECMA 262 edition 2 - section - 11.10
ECMA 262 edition 2 - section - 11.13
ECMA 262 edition 3 - section - 11.10
Prev | Home | Next |
Bit-field | Up | Bitwise AND 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. |