题解 | #全选#
全选
https://www.nowcoder.com/practice/84b89f326e3c4e96bacb63296e84623a
咱也不知道为啥运行不了。。
本题考点:Array.from、every
Array.from 将类数组转成真正的数组,才能遍历
every 全部选中返回true,只要有1个不选中则返回false,刚好满足该题条件。
<script> const oAll = document.getElementById('all') const items = Array.from(document.getElementsByClassName('item')) items.forEach((item) => { item.onchange = () => { // 检查是否"全选"或"全不选" return oAll.checked = items.every(n => n.checked) } }) // 全选/全不选 oAll.onchange = () => { items.forEach(item => { item.checked = oAll.checked }) } </script>