忽略的知识点- 逻辑运算符& -如何保存多选项的选择结果
正常使用varchar保存是可以,但是对于大数据量下, 我们还可以利用二进制进行合理的存储
例如
有多选题ABCD四个选项
每一位使用一个二进制数表示选择与否, 1111表示全选, 0000表示未选
存储时可以直接将获取的解决转10进制存储,
parseInt("1111", 2); //15
还原选项时,可以直接将获取到的值转二进制
(15).toString(2);//1111
如果选中结果为1111, 检查对应项是否选中:
A: parseInt("1111" & "0001", 2) == 1B: parseInt("1111" & "0010", 2) == 2
C: parseInt("1111" & "0100", 2) == 4
D: parseInt("1111" & "1000", 2) == 8
如果结果为1000,检查对应项是否选中:
A: parseInt("1000" & "0001",2) == 1 // falseB: parseInt("1000" & "0010",2) == 2 // false
C: parseInt("1000" & "0100",2) == 4 // false
D: parseInt("1000" & "1000",2) == 8 //true
标题:忽略的知识点- 逻辑运算符& -如何保存多选项的选择结果
作者:hugh0524
地址:https://blog.uproject.cn/articles/2019/05/06/1557120220932.html
0 0