首頁  >  文章  >  web前端  >  jQuery中關於​​map函數兩種方式的範例程式碼

jQuery中關於​​map函數兩種方式的範例程式碼

黄舟
黄舟原創
2017-07-19 16:32:151637瀏覽

本文跟大家分享jquery中map函數的兩種方式,非常不錯,具有參考借鑒價值,需要的朋友參考下吧

兩種方式:

1、直接jQuery.map


#
//将原数组中每个元素加 4 转换为一个新数组。
$.map( [0,1,2], function(n){
 return n + 4;
});
//结果:
[4, 5, 6]
//原数组中每个元素扩展为一个包含其本身和其值加 1 的数组,并转换为一个新数组
$.map( [0,1,2], function(n){
 return [ n, n + 1 ];
});
//结果:
[0, 1, 1, 2, 2, 3]

2、遍歷物件.map

範例:


<form method="post" action="">
 <fieldset>
  <p>
   <label for="two">2</label>
   <input type="checkbox" value="2" id="two" name="number[]">
  </p>
  <p>
   <label for="four">4</label>
   <input type="checkbox" value="4" id="four" name="number[]">
  </p>
  <p>
   <label for="six">6</label>
   <input type="checkbox" value="6" id="six" name="number[]">
  </p>
  <p>
   <label for="eight">8</label>
   <input type="checkbox" value="8" id="eight" name="number[]">
  </p>
 </fieldset>
</form>
$(&#39;:checkbox&#39;).map(function() {
 return this.id;
}).get().join(&#39;,&#39;);

結果:two,four,six,eight

解析:

map()的功能主要有兩步, 第一步就是遍歷,第二步就是替換。


$( " li " ).map( function(){
return $(this).text(); // 注意return关键字不可少
})

map先遍歷,每一項都會傳回一個text()值,然後map會將這些值自動去替換$("li")集合的每一項值,所以這個時候還是個類別數組(因為還是$(" li ")的殼子),不是真正的陣列。於是後面加個get()操作就變成真正的陣列了,於是可以用join()這樣專屬於陣列的方法。

以上是jQuery中關於​​map函數兩種方式的範例程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn