JavaScript - 位运算符
原创JavaScript 位运算符详解
JavaScript中的位运算符允许开发者在二进制级别对整数进行操作。这些运算符直接处理数值的每一位,与逻辑运算符类似但作用于单个比特位。
位运算符概述
JavaScript中的位运算符会将操作数转换为32位有符号整数进行运算,运算完成后再转换回64位浮点数。以下是JavaScript支持的7种位运算符:
| 运算符 | 名称 | 描述 |
|---|---|---|
| & | 按位与 | 两位都为1时结果为1 |
| | | 按位或 | 任一位为1时结果为1 |
| ^ | 按位异或 | 两位不同时结果为1 |
| ~ | 按位非 | 反转所有位 |
| << | 左移 | 向左移动指定位数 |
| >> | 右移 | 向右移动指定位数 |
| >>> | 无符号右移 | 向右移动并用0填充 |
按位与运算符(&)
按位与运算符对两个操作数的每一位进行比较,当两个对应位都为1时结果位才为1。
<html>
<body>
<div id="output"></div>
<script>
const a = 5;
const b = 7;
document.getElementById("output").innerHTML = "a & b = " + (a & b);
</script>
</body>
</html>
按位或运算符(|)
按位或运算符对两个操作数的每一位进行比较,当任一位为1时结果位就为1。
<html>
<body>
<div id="output"></div>
<script>
const a = 5;
const b = 7;
document.getElementById("output").innerHTML = "a | b = " + (a | b);
</script>
</body>
</html>
按位异或运算符(^)
按位异或运算符对两个操作数的每一位进行比较,当两位不同时结果位为1。
<html>
<body>
<div id="output"></div>
<script>
const a = 5;
const b = 7;
document.getElementById("output").innerHTML = "a ^ b = " + (a ^ b);
</script>
</body>
</html>
位移运算符
位移运算符包括左移(<<)、右移(>>)和无符号右移(>>>)。左移运算符将二进制数向左移动指定位数,右移运算符则向右移动。
<html>
<body>
<div id="output"></div>
<script>
const a = 5;
document.getElementById("output").innerHTML =
"a << 1 = " + (a << 1) + "<br>" +
"a >> 1 = " + (a >> 1) + "<br>" +
"a >>> 1 = " + (a >>> 1);
</script>
</body>
</html>
位运算符在JavaScript中虽然不常用,但在某些特定场景下(如权限控制、加密算法等)能提供高效的解决方案。理解这些运算符的工作原理有助于开发者编写更高效的代码。
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权本站发表,未经许可,不得转载。
上一篇:JavaScript - 逻辑运算符 下一篇:
HTML - 列表
开发学习网




