hsz*_*hsz 1 javascript bit-manipulation bitwise-operators
我有一个以下的字符串:
var input = '11100001';
Run Code Online (Sandbox Code Playgroud)
我想检查是否存在8位,所以我尝试过:
input & '10000000'
Run Code Online (Sandbox Code Playgroud)
但它给了我8918528.我该怎么测试呢?
你试图在两个字符串上做一个按位AND,它隐式地将它们转换为假设为10的整数.你应该将它们解析为明确提供基数的整数:
parseInt(input,2) & parseInt('10000000',2)
// 128
Run Code Online (Sandbox Code Playgroud)
编辑:检查是否n设置了-th位你可以按n-1位向右移动并检查它是否正确1
parseInt(input,2) >> 7 & 1 === 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
127 次 |
| 最近记录: |