选择集 selection
- select(selector) 返回匹配的第一个元素
- selectAll(selector) 返回匹配的全部元素
查看选择集状态
- empty() 返回选择集是否为空
- node() 返回选择集的第一个元素或者null
- size() 返回选择集的元素个数
设置或获取元素属性
- attr(key [, value]) 设置或获取元素的属性key,支持对象参数
- classed(className [, value]) 设置或获取元素的class,第二个参数为bool值,支持对象参数
- style(key [, value]) 设置或获取样式属性,支持key-value对象参数
- property(key [, value]) 设置或获取元素特性,如input元素的value值
- text([value]) 设置或获取元素的文本内容,不含标签,相当于innerText
- html([value]) 设置或获取元素的内部内容,包含标签,相当于innerHTML
插入、追加和删除元素
- append(element) 在选中元素集后追加元素
- insert(element [, selector]) 在选择集中selector前插入元素
- remove() 删除选中元素
数据绑定
- datum([value]) 为选择中的每个元素都绑定相同的值
- data([values [,key]]) 为选择集中的符合规则的每个元素绑定的值
注意:
- 数组长度 > 元素数量 enter 添加元素足以显示完元素
- 数组长度 < 元素数量 exit 删除多余元素使之与数据对应
- 数组长度 = 元素数量 update
data()绑定后返回的update对象有enter()和exit()方法可以对没有对于的数据进行处理
选择集常用方法
- filter(fn) 过滤出符合条件fn的集合
- sort([compare]) 按照compare规则排序
- each(fn) 遍历选择集中的元素
- call(fn) 将选择作为fn函数的参数
新增数组方法
- ascending(a,b) 升序比较函数
- descending(a,b) 降序比较函数
- min(array [, accessor]) 返回最小值
- max(array [, accessor]) 返回最大值
- extend(array [, acessor]) 返回最小值和最大值
- sum(array [, accessor]) 求和
- mean(array [, accessor]) 求均值
注意:accessor是个函数,对数组各项执行了accessor之后再执行相应的操作
生成数组
- range([start,] stop [, step]) 返回等差数列. 若stop > 0 , 生成的各项值< stop;否则生成各项值>stop;start和step的默认值分别是0和1.
- shuffle(array[, low [, high]]) 随机排列数组
合并数组
merge(arrays) 合并数组
Map
- map([value] [, key]) 生成Map
- has(key) 返回是否有对应的key
- get(key) 返回指定key的值或undefined
- set(key, value) 设置指定key的值为value,没有对应的key会自动添加,如果有值则会覆盖旧值
- remove(key) 删除指定的key,返回bool值
- keys() 返回key组成的数组
- vlues() 返回value组成的数组
- entries() 返回key-value形式的数组
- each(fn) | forEach(fn) 遍历key-value
- empty() 返回Map是否为存在key-value
- size() 返回Map中key-value的对数