我正在检查每个复选框的状态(总共 2 个元素)。
var checked = [];
document.querySelectorAll('.checkbox').forEach(function(e,i){
checked.push(e.checked)
})
现在选中的值可以是
(2) [true, true]
或
(2) [true, false]
或
(2) [false, true]
或
(2) [false, false]
我现在正在用一些手动方式检查它
if(checked[0] && check[1]) { ... }
如果我有更多的元素,我必须手动添加它们
if(checked[0] && check[1] && check[2]) { ... }
我正在寻找一种更好的方法来完善我的代码,因此我不需要手动添加数组值来进行比较。谢谢
最佳答案
使用every
和Array.from
var checked = [];
var allCheckboxes = document.querySelectorAll('.checkbox');
var allChecked = Array.from( allCheckboxes ).every( s => s.checked )
关于Javascript 数组值比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49649850/