every some 方法
- 返回布尔值
- every 每一项都返回 true,every 才会返回 true;有一项返回 false,every 就返回 false
- some 只要有一项返回 true,some 就返回 true
let arr = [1, 2, 3, 5, -10];
console.log(arr.every(item => item > 0)) // false
console.log(arr.some(item => item > 0)) // true
querySelector()
- document.querySelector('#demo')
- 返回匹配指定选择器的第一个元素
- 参数:css 选择器
指定一个或多个匹配元素的 css 选择器。
可以使用元素的 id,类,类型,属性,属性值等。
对于多个选择器,使用逗号隔开,返回第一个匹配其中任一选择器的元素。
querySelectorAll()
- document.querySelectorAll('.example')
- 返回匹配指定 css 选择器的所有元素,返回 NodeList 对象
事件代理(事件委托)
- 利用事件冒泡,把事件放在父祖元素上进行处理
sort()
- arr.sort((a, b) => b - a)
- 返回负值交换顺序,正值保持不变
let arr = [2, 3, 5, 1, 4]
arr.sort((a, b) => { // a: 下一个比较的数(后一个数);b: 前一个数
return a - b
})
console.log(arr) // [1, 2, 3, 4, 5]
// a - b 从小到大排列
// b - a 从大到小排列
表达式
- 表达式运算之后会有结果输出
以下那些是表达式:1、2、4
1、function fn () { return 1 };${fn()}
2、let a = 0; let b = 1;${a || b}
3、let a = 0; let b = 1;${while (a) { b = 10 }}
// 不是表达式
4、let a = 0; let b = 1;${a > b ? a : b}
classList 属性
- classList 属性返回元素的类名,作为 DOMTokenList 对象。
- classList 属性是只读的,但可以使用 add() 和 remove() 方法修改它,用于在元素中添加、移除和切换 css 类
- document.getElementById('myDIV'),classList.add('mystyle')
- 属性:length 返回类列表中类的数量,只读
- 方法:
add(class1, class2, ...) 在元素中添加一个或多个类名,如果指定的类名已存在,则不会添加
contains(class) 返回布尔值,判断指定类名是否存在
item(index) 返回元素中索引值对应的类名,索引值从0开始,索引值在区间外返回 null
remove(calss1, class2, ...) 移除元素中一个或多个类名
toggle(class, true/false) 在元素中切换类名
第一个参数:若元素中存在该类名,则移除,并返回 false;若不存在,则添加,并返回 true
第二个参数:可选,布尔值用于设置元素是否强制添加或移除类,不管该类名是否已存在
自定义属性
以 data- 开头的属性
在 JS 中,可以使用 dataset 去获取和设值
<div id="box" data-name="han">box</div>
<script>
let box = document.querySelector('#box')
console.log(box.dataset.name) // 'han'
box.dataset.name = 'yue'
</script>