Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在


Posted in jQuery onJanuary 18, 2019

1.jquery grep()筛选遍历数组(可以得到反转的数组)

// 1.jquery grep()筛选遍历数组(可以得到反转的数组)
  var array = [1,5,9,3,12,4,48,98,4,75,2,10,11];
  var filterArray = $.grep(array,(currentValue) => {
    return currentValue > 10;
  });
  console.log(`${filterArray}---${filterArray.length}`);//12,48,98,75,11---5
  var filterReverse = $.grep(array,(currentValue) => {
    return currentValue > 10;
  },true);
  console.log(`${filterReverse}---${filterReverse.length}`);//1,5,9,3,4,4,2,10---8
 
  // for(var i=0;i<filterArray.length;i++){
  //   console.log(filterArray[i]);
  // }
  for(key in filterArray){
    console.log(filterArray[key])
  }

Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在

2.filter()筛选遍历数组(与grep()不同的是调用者不同,参数不同)

var ages = [32, 33, 16, 40, 45, 98, 12, 35, 8,16];
  var filterAges = ages.filter((currentValue,index,ages) => {
    return currentValue > 20;
  })
  console.log(filterAges);//[32, 33, 40, 45, 98, 35]
  for(key in filterAges){
    console.log(filterAges[key])
  }

Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在

3.jquery each()筛选遍历数组(主要用来遍历对象)

var anObject = {one:1,two:2,three:3};//对json数组each
  $.each(anObject,function(name,value) {
    console.log(`${name}---${value}`)
  });
  var anArray = ['one','two','three'];
  $.each(anArray,function(n,value){
     console.log(`${n}---${value}`)
  });

4.jquery forEach()筛选遍历数组

var forArray = ['mu','zi','muzi','digbig','muzidigbig'];
  forArray.forEach((currentValue,index,forArray) => {
    console.log(`${index}---${currentValue}`)
  })

5.jquery map()筛选遍历数组

var strings = ['0','1','2','3','4','S','6'];
  var values = $.map(strings,function(value){
      var result = new Number(value);
      return isNaN(result) ? null:result;//isNaN:is Not a Number的缩写
    });
  for (key in values) {
    console.log(values[key]);
  }

6.jquery inArray()筛选遍历数组(用于查找某个值第一次在数组中出现的位置)

var iArray = ['one','two','three','two'];
  var index = $.inArray('two',anArray);
  console.log(`返回该值在数组中的键值:${index}`);//返回该值在数组中的键值,返回 1
  console.log(`返回该键在数组中的值:${iArray[index]}`);//two

7.indexOf()用于查找某个值第一次在数组中出现的位置(存在返回第一次出现的索引值,不存在返回-1)

var iArray = ['one','two','three','two'];
  var indexOf = iArray.indexOf('two');
  console.log(indexOf);//1

8.includes()(判断数组中是否存在某个值返回Boolean类型)

var iArray = ['one','two','three','two'];
  var index = iArray.includes('two');
  console.log(index);//true

二、遍历解析json对象

1.遍历json 1

var json = [{dd:'SB',AA:'东东',re1:123},{cccc:'dd',lk:'1qw'}];
for(var i=0,l=json.length;i<l;i++){
  for(var key in json[i]){
  console.log(`${key}:${json[i][key]}`);
  }
}

2、jquery遍历解析json对象 2

有如下 json对象:

var obj ={'name':'冯娟','password':'123456','department':'技术部','sex':'女','old':30};

遍历方法:

var obj ={'name':'冯娟','password':'123456','department':'技术部','sex':'女','old':30};
var str = '';
for(var p in obj){
  str += obj[p]+',';
//  return str;
}
console.log(str);//冯娟,123456,技术部,女,30,

三、Map()方法详解

1、实例

构建表单中所有值的列表:

$("p").append( $("input").map(function(){
 return $(this).val();
}).get().join(", ") );

2、定义和用法

map() 把每个元素通过函数传递到当前匹配集合中,生成包含返回值的新的 jQuery 对象。

3、语法

.map(callback(index,domElement))

参数

描述

callback(index,domElement)  对当前集合中的每个元素调用的函数对象。

详细说明

由于返回值是 jQuery 封装的数组,使用 get() 来处理返回的对象以得到基础的数组。

.map() 方法对于获得或设置元素集的值特别有用。请思考下面这个带有一系列复选框的表单:

<form method="post" action="">
 <fieldset>
  <div>
   <label for="two">2</label>
   <input type="checkbox" value="2" id="two" name="number[]">
  </div>
  <div>
   <label for="four">4</label>
   <input type="checkbox" value="4" id="four" name="number[]">
  </div>
  <div>
   <label for="six">6</label>
   <input type="checkbox" value="6" id="six" name="number[]">
  </div>
  <div>
   <label for="eight">8</label>
   <input type="checkbox" value="8" id="eight" name="number[]">
  </div>
 </fieldset>
</form>

我们能够获得复选框 ID 组成的逗号分隔的列表:

$(':checkbox').map(function() {
 return this.id;
}).get().join(',');

本次调用的结果是字符串:"two,four,six,eight"。

在 callback 函数内部,this 引用每次迭代的当前 DOM 元素。该函数可返回单独的数据项,或者是要被插入结果集中的数据项的数组。如果返回的是数组,数组内的元素会被插入集合中。如果函数返回 null 或 undefined,则不会插入任何元素。

若有不足请多多指教!希望给您带来帮助!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

jQuery 相关文章推荐
jQuery实现文章图片弹出放大效果
Apr 06 jQuery
jQuery制作全屏宽度固定高度轮播图(实例讲解)
Jul 08 jQuery
jquery实现下拉菜单的手风琴效果
Jul 23 jQuery
jQuery实现checkbox的简单操作
Nov 18 jQuery
jquery在启动页面时,自动加载数据的实例
Jan 22 jQuery
jQuery easyui datagird编辑行删除行功能的实现代码
Sep 20 jQuery
jQuery访问json文件中数据的方法示例
Jan 28 jQuery
详解jQuery设置内容和属性
Apr 11 jQuery
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 jQuery
JQuery常见节点操作实例分析
May 15 jQuery
jQuery实现的鼠标拖动画矩形框示例【可兼容IE8】
May 17 jQuery
jQuery 图片查看器插件 Viewer.js用法简单示例
Apr 04 jQuery
jquery的$().each和$.each的区别
Jan 18 #jQuery
jquery层次选择器的介绍
Jan 18 #jQuery
jQuery无冲突模式详解
Jan 17 #jQuery
JQuery判断radio单选框是否选中并获取值的方法
Jan 17 #jQuery
Jquery获取radio选中值实例总结
Jan 17 #jQuery
jquery获取img的src值实例介绍
Jan 16 #jQuery
jQuery实现的点击图片居中放大缩小功能示例
Jan 16 #jQuery
You might like
总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
2016/09/09 PHP
Yii2结合Workerman的websocket示例详解
2018/09/10 PHP
PHP命名空间定义与用法实例分析
2019/08/14 PHP
拖动table标题实现改变td的大小(css+js代码)
2013/04/16 Javascript
js实现类似菜单风格的TAB选项卡效果代码
2015/08/28 Javascript
javascript跑马灯抽奖实例讲解
2020/04/17 Javascript
AngularJS实用开发技巧(推荐)
2016/07/13 Javascript
浅析JavaScript函数的调用模式
2016/08/10 Javascript
jQuery模拟实现天猫购物车动画效果实例代码
2017/05/25 jQuery
在HTML文档中嵌入JavaScript的四种方法
2018/05/07 Javascript
vue中,在本地缓存中读写数据的方法
2018/09/21 Javascript
Vue项目引进ElementUI组件的方法
2018/11/11 Javascript
ES6 Set结构的应用实例分析
2019/06/26 Javascript
Python验证码识别处理实例
2015/12/28 Python
Python常用的爬虫技巧总结
2016/03/28 Python
Python中列表与元组的乘法操作示例
2018/02/10 Python
PyQt5每天必学之弹出消息框
2018/04/19 Python
python实现彩票系统
2020/06/28 Python
python判断链表是否有环的实例代码
2020/01/31 Python
Python3创建Django项目的几种方法(3种)
2020/06/03 Python
Python smtp邮件发送模块用法教程
2020/06/15 Python
Python如何创建装饰器时保留函数元信息
2020/08/07 Python
python中的时区问题
2021/01/14 Python
python urllib和urllib3知识点总结
2021/02/08 Python
python利用后缀表达式实现计算器功能
2021/02/22 Python
HTML5拖拽文件到浏览器并实现文件上传下载功能代码
2013/06/06 HTML / CSS
全球领先的鞋类零售商:The Walking Company
2016/07/21 全球购物
财务学生的职业生涯发展
2014/02/11 职场文书
《胖乎乎的小手》教学反思
2014/02/26 职场文书
公司节能减排倡议书
2014/05/14 职场文书
党员干部廉洁承诺书
2014/05/28 职场文书
趣味运动会广播稿
2014/09/13 职场文书
Win11 Build 21996.1 Dev版怎么样? win11系统截图欣赏
2021/11/21 数码科技
详解JavaScript的计时器和按钮效果设置
2022/02/18 Javascript
python实现会员信息管理系统(List)
2022/03/18 Python
springboot layui hutool Excel导入的实现
2022/03/31 Java/Android