JQ的map/reduce/filter/sort/reverse

Posted srbc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JQ的map/reduce/filter/sort/reverse相关的知识,希望对你有一定的参考价值。

map 是遍历数组,并返回一个新数组.

  1. oldArray = [1,2,3,4,5,6];
  2. newArray = oldArray.map(function(val,index){
  3.   return val + 3;
  4. });

newArray :   4,5,6,7,8,9

 

reduce 是遍历数组,把所有元素组合到一起:

  1. oldArray = [1,2,3,4,5,6];
  2. sum = oldArray.reduce(function(preVal,curVal){
  3.   return preVal + curVal;
  4. });

sum : 21

 

filter 是遍历数组,根据条件筛选 得出一个新数组

  1. oldArray = [1,2,3,4,5,6];
  2. newArray = oldArray.filter(function(val){
  3.   return val < 4;
  4. });

newArray : 1,2,3

与我们之前用的数组方法仅仅返回一个新数组不同, sort 方法将改变原数组,返回被排序后的数组。
默认 :按字母顺序或数字顺序对数组中的元素进行排序。

 

 

sort 可以把比较函数作为参数传入。比较函数有返回值,当 a 小于 b,返回一个负数;当 a 大于 b ,返回一个正数;相等时返回0。

如果没有传入比较函数,它将把值全部转成字符串,并按照字母顺序进行排序。

下面的例子将展示 sort 的使用,传入的比较函数把元素按照从小到大的顺序进行排列:

  1. var array = [1, 12, 21, 2];
  2. array.sort(function(a, b) {
  3.   return a - b;
  4. });

 

 

reverse 对数组进行反转,对元素组操作,返回反转后的数组。

  1. var array = [1, 2,3,4,5];
  2. var newArray = [];
  3. newArray = array.reverse();

array : 5,4,3,2,1

newArray: 5,4,3,2,1

 

concat 方法可以用来把两个数组的内容合并到一个数组中。
concat 方法的参数应该是一个数组。参数中的数组会拼接在原数组的后面,并作为一个新数组返回。
下面是一个拼接数组的例子,用concat 把 otherArray 拼接在 oldArray 的后面:

  1. newArray = oldArray.concat(otherArray);

 

链接:yoosir 的文章《JS之JQ的map/reduce/filter/sort/reverse》

来源:简书




以上是关于JQ的map/reduce/filter/sort/reverse的主要内容,如果未能解决你的问题,请参考以下文章

python系统学习:第四周之Map/Reduce/Sored高级函数

Python学习笔记

Python学习笔记

jQuery框架使用,jq选择器,jq操作页面内容, jq操作类名,jq操作全局属性,jq获取盒子信息,jq获取位置信息,js/jq页面加载完毕事件,jq事件

jQuery---jq操作标签文本(html(),text()),jq操作文档标签(插入,删除,修改),克隆,,jq操作属性,jq操作class属性,jq操作表单value,jq操作css,jq操作盒

学习04-jq(jq的使用,jq的入口函数,jq与DOM的转换,基本选择器,层级选择器,设置样式,筛选选择器,筛选方法)