欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Jquery遍歷篩選數(shù)組的幾種方法和遍歷解析json對(duì)象,Map()方法詳解以及數(shù)組中查詢某值是否存在

 更新時(shí)間:2019年01月18日 10:21:12   作者:muzidigbig  
今天小編就為大家分享一篇關(guān)于Jquery遍歷篩選數(shù)組的幾種方法和遍歷解析json對(duì)象|Map()方法詳解以及數(shù)組中查詢某值是否存在,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧

1.jquery grep()篩選遍歷數(shù)組(可以得到反轉(zhuǎn)的數(shù)組)

// 1.jquery grep()篩選遍歷數(shù)組(可以得到反轉(zhuǎn)的數(shù)組)
  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])
  }

2.filter()篩選遍歷數(shù)組(與grep()不同的是調(diào)用者不同,參數(shù)不同)

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])
  }

3.jquery each()篩選遍歷數(shù)組(主要用來遍歷對(duì)象)

var anObject = {one:1,two:2,three:3};//對(duì)json數(shù)組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()篩選遍歷數(shù)組

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

5.jquery map()篩選遍歷數(shù)組

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()篩選遍歷數(shù)組(用于查找某個(gè)值第一次在數(shù)組中出現(xiàn)的位置)

var iArray = ['one','two','three','two'];
  var index = $.inArray('two',anArray);
  console.log(`返回該值在數(shù)組中的鍵值:${index}`);//返回該值在數(shù)組中的鍵值,返回 1
  console.log(`返回該鍵在數(shù)組中的值:${iArray[index]}`);//two

7.indexOf()用于查找某個(gè)值第一次在數(shù)組中出現(xiàn)的位置(存在返回第一次出現(xiàn)的索引值,不存在返回-1)

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

8.includes()(判斷數(shù)組中是否存在某個(gè)值返回Boolean類型)

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

二、遍歷解析json對(duì)象

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對(duì)象 2

有如下 json對(duì)象:

var obj ={'name':'馮娟','password':'123456','department':'技術(shù)部','sex':'女','old':30};

遍歷方法:

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

三、Map()方法詳解

1、實(shí)例

構(gòu)建表單中所有值的列表:

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

2、定義和用法

map() 把每個(gè)元素通過函數(shù)傳遞到當(dāng)前匹配集合中,生成包含返回值的新的 jQuery 對(duì)象。

3、語法

.map(callback(index,domElement))

參數(shù)

描述

callback(index,domElement)  對(duì)當(dāng)前集合中的每個(gè)元素調(diào)用的函數(shù)對(duì)象。

詳細(xì)說明

由于返回值是 jQuery 封裝的數(shù)組,使用 get() 來處理返回的對(duì)象以得到基礎(chǔ)的數(shù)組。

.map() 方法對(duì)于獲得或設(shè)置元素集的值特別有用。請(qǐng)思考下面這個(gè)帶有一系列復(fù)選框的表單:

<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>

我們能夠獲得復(fù)選框 ID 組成的逗號(hào)分隔的列表:

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

本次調(diào)用的結(jié)果是字符串:"two,four,six,eight"。

在 callback 函數(shù)內(nèi)部,this 引用每次迭代的當(dāng)前 DOM 元素。該函數(shù)可返回單獨(dú)的數(shù)據(jù)項(xiàng),或者是要被插入結(jié)果集中的數(shù)據(jù)項(xiàng)的數(shù)組。如果返回的是數(shù)組,數(shù)組內(nèi)的元素會(huì)被插入集合中。如果函數(shù)返回 null 或 undefined,則不會(huì)插入任何元素。

若有不足請(qǐng)多多指教!希望給您帶來幫助!

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • jQuery+css實(shí)現(xiàn)的時(shí)鐘效果(兼容各瀏覽器)

    jQuery+css實(shí)現(xiàn)的時(shí)鐘效果(兼容各瀏覽器)

    這篇文章主要介紹了jQuery+css實(shí)現(xiàn)的時(shí)鐘效果,使用js的setTimeout方法實(shí)時(shí)修改頁面元素,實(shí)現(xiàn)動(dòng)態(tài)顯示時(shí)鐘的功能.該代碼可兼容各瀏覽器,需要的朋友可以參考下
    2016-01-01
  • jquery操作HTML5 的data-*的用法實(shí)例分享

    jquery操作HTML5 的data-*的用法實(shí)例分享

    從jQuery 1.4.3起, HTML 5 data- 屬性 將自動(dòng)被引用到j(luò)Query的數(shù)據(jù)對(duì)象中。也就是說雖然 data-* 是在html5 中的元素, 但是如果使用 jquery 1.4.3庫以上的.還是可以 在非HTML5的頁面或?yàn)g覽器里, 仍然可以使用.data(obj)方法來操作"data-*" 數(shù)據(jù).
    2014-08-08
  • 在JQuery dialog里的服務(wù)器控件 事件失效問題

    在JQuery dialog里的服務(wù)器控件 事件失效問題

    今天遇到個(gè)問題,在dialog中放了服務(wù)器端的空間dropdownlist,但是寫selectindexchange事件卻怎么也觸發(fā)不了,然后就在網(wǎng)上搜,終于看到有個(gè)哥們解決了這個(gè)問題,真的謝謝他。
    2010-12-12
  • jQuery判斷checkbox選中狀態(tài)

    jQuery判斷checkbox選中狀態(tài)

    這篇文章主要介紹了jQuery判斷checkbox選中狀態(tài)的相關(guān)資料,非常具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧
    2016-05-05
  • jquery封裝插件時(shí)匿名函數(shù)形參和實(shí)參的寫法解釋

    jquery封裝插件時(shí)匿名函數(shù)形參和實(shí)參的寫法解釋

    本文主要介紹了jquery封裝插件時(shí)匿名函數(shù)形參和實(shí)參的寫法解釋。具有很好的參考價(jià)值,下面跟著小編一起來看下吧
    2017-02-02
  • jQuery插件實(shí)現(xiàn)表格隔行變色及鼠標(biāo)滑過高亮顯示效果代碼

    jQuery插件實(shí)現(xiàn)表格隔行變色及鼠標(biāo)滑過高亮顯示效果代碼

    這篇文章主要介紹了jQuery插件實(shí)現(xiàn)表格隔行變色及鼠標(biāo)滑過高亮顯示效果代碼,涉及jQuery針對(duì)頁面元素動(dòng)態(tài)操作及響應(yīng)鼠標(biāo)事件動(dòng)態(tài)修改頁面元素樣式的相關(guān)技巧,需要的朋友可以參考下
    2016-02-02
  • jQuery插件PageSlide實(shí)現(xiàn)左右側(cè)欄導(dǎo)航菜單

    jQuery插件PageSlide實(shí)現(xiàn)左右側(cè)欄導(dǎo)航菜單

    jQuery pageSlide 是一個(gè)可以讓網(wǎng)頁出現(xiàn)滾動(dòng)效果的jQuery插件,它可以控制一個(gè)隱藏頁面的顯示和關(guān)閉。具體來說,就是當(dāng)前頁占一個(gè)完整頁面,隱藏頁是看不到的,你設(shè)置一個(gè)控制的地方,點(diǎn)擊該控制時(shí)觸發(fā)事件,隱藏的頁面就滑出來,再次點(diǎn)擊隱藏頁面以外的地方,它就又關(guān)閉
    2015-04-04
  • 最原始的jQuery注冊(cè)驗(yàn)證方式

    最原始的jQuery注冊(cè)驗(yàn)證方式

    這篇文章主要為大家詳細(xì)介紹了最原始的jQuery注冊(cè)驗(yàn)證方式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • EasyUI實(shí)現(xiàn)第二層彈出框的方法

    EasyUI實(shí)現(xiàn)第二層彈出框的方法

    本文給大家分享的是一則使用EasyUI實(shí)現(xiàn)第二層彈出框的方法,核心代碼是網(wǎng)友提供,這里結(jié)合自己的項(xiàng)目需求,完善了下,推薦給大家。
    2015-03-03
  • jquery插件之easing使用

    jquery插件之easing使用

    很簡(jiǎn)單的一個(gè)效果插件,但不是經(jīng)常用,怕忘了,以后在用又要去看文檔,所以現(xiàn)在把筆記寫下來,方便以后
    2010-08-08

最新評(píng)論