Javascript 角度js中多个二进制数据的按位and运算
我正在研究angular js 我对多个二进制数据(二进制数据数组[“1”、“100”、“10000”、“10”)的按位and运算有疑问 在我的HTML页面中,有一个包含多个复选框的字段。每个复选框的值为1,2,4,8,16,32。存储在数据库中。 。在特定html页面的控制器中,我将这些转换为二进制数据并存储在数组中。[“1”、“100”、“10000”、“10”] 因此,如果我检查字段的3个值(例如..1,4,16..),这些值对应的二进制数据数组应该执行二进制and运算,并根据结果将其十进制值存储在数据库中Javascript 角度js中多个二进制数据的按位and运算,javascript,bit-manipulation,Javascript,Bit Manipulation,我正在研究angular js 我对多个二进制数据(二进制数据数组[“1”、“100”、“10000”、“10”)的按位and运算有疑问 在我的HTML页面中,有一个包含多个复选框的字段。每个复选框的值为1,2,4,8,16,32。存储在数据库中。 。在特定html页面的控制器中,我将这些转换为二进制数据并存储在数组中。[“1”、“100”、“10000”、“10”] 因此,如果我检查字段的3个值(例如..1,4,16..),这些值对应的二进制数据数组应该执行二进制and运算,并根据结果将其十进
请在这方面帮助我。首先将字符串转换为int,使用
parseInt
和基数2
然后按位或
将它们打包为一个整数
var bits = ["1","100","10000","10"].map(function (x) {
return parseInt(x, 2);
});
var result = bits.reduce(function (accumulator, curr) {
return accumulator | curr;
});
//result is now 23 which is the decimal representation of binary 1 0 1 1 1
//-------------------------------------------------------------- 16 +0 +4 +2 +1
现在我的问题是..基于这个结果值..如何绑定到特定字段。例如…字段有1,2,4,16个值,通过添加其23…基于23,我应该选中字段中这些相应值的复选框..请在dis上帮助我。