1 js数组方法
1. JavaScript中修改数组自身的方法:
- array.pop - 移除最后一个元素.
- array.push - 追加一个或多个元素.
- array.reverse - 数组翻转.
- array.shift - 移除第一个元素.
- array.sort - 排序.
- array.splice - 添加或着移除.
- array.unshift - 在数组前添加一个或多个元素.
2.JavaScript中数组的存取方法:
- array.concat - 将数组与数组或值合并.
- array.join - 只用指定的字符串将数组转为一个字符串.
- array.slice - 提取切片.
- array.indexOf - 找出指定元素的索引.
- array.lastIndexOf - 找出指定元素的最后一个索引.
3.JavaScript中数组的迭代方法:
- array.filter - 过滤.
- array.forEach - 对每个元素执行某个方法.
- array.every - 是否每个元素都符合给定的条件.
- array.map - 根据指定的操作对每个元素执行后返回一个新的数组.
- array.some - 是否存在符合某个条件的元素.
- array.reduce - 从左到右执行reduce操作并返回一个值.
- array.reduceRight - 从右到左执行reduce操作并返回一个值.
2 d3数组方法
计算类
d3.min(array) 获取最小值
d3.max(array) 获取最大值
d3.extent(array) 获取极值[最小值,最大值]
d3.sum() 计算和
d3.mean() 获取数组的均值
d3.median() 获取数组的中位数
d3.quantile() 类似比例尺计算
var a = [0, 10, 30];
d3.quantile(a, 0); // 0
d3.quantile(a, 0.5); // 10
d3.quantile(a, 1); // 30
d3.quantile(a, 0.25); // 5
d3.quantile(a, 0.75); // 20
d3.quantile(a, 0.1); // 2
d3.variance() 求方差
d3.deviation() 求标准差
查找类
d3.scan()
d3.d3.bisectLeft(array, x[, lo[, hi]]) 返回x在数组中应该被插入的位置并保证数组的有序性,如果数组中已经存在x,则插入点的位置位于这个已经存在的元素之前
d3.bisect()
d3.bisectRight() 与bisectLeft类似, 但是插入点的位置是从右向左计算的.
d3.bisector()
数组变换
d3.cross()
d3.shuffle(array) 将数据重新随机
d3.pairs(array)
d3.pairs([1, 2, 3, 4]); // returns [[1, 2], [2, 3], [3, 4]]
d3.permute(arrayA,arrayB) 根据指定索引数组,返回排序后的数组
d3.permute(["a", "b", "c"], [1, 2, 0]) // ["b", "c", "a"].
d3.ticks(start, stop, count) 在start和stop之间计算出一个等间隔的、精确的刻度序列
d3.tickStep(start, stop, count)根据start和stop以及count返回刻度的间隔大小
d3.range([start, ]stop[, step])
d3.range(0, 1, 1 / 49); // BAD: returns 50 elements!
d3.range(49).map(function(d) { return d / 49; }); // GOOD: returns 49 elements.
d3.transpose() 使用zip操作进行矩阵转置.
d3.zip() 数组重合并
d3.zip([1, 2], [3, 4]); // returns [[1, 3], [2, 4]]
网友评论