jQuery中map()与get()的具体分析
程序员文章站
2022-04-30 11:50:04
...
jQuery下有个概念叫“类数组”,比如$( " li " ),当取到一个集合的时候,会有数组的一些属性,但是instancseof Array仍然是false。但是var a=$( "li" ).get()这样处理一下,然后instancseof
Array就返回true。
要注意var a=$( "li" ).get(1)里头加序列号可以取到单个元素,这些元素的性质不是jQuery对象,而是Js对象,所以不可直接用jQuery方法。
map()的功能主要有两步,第一步就是遍历,第二步就是替换。
$( " li " ).map( function( ){ return $(this).text( ); // 注意return关键字不可少 } )
map先遍历,每一项都返回一个text()值,然后map会将这些值自动去替换$("li")集合的每一项值,所以这个时候还是个类数组(因为还是$(" li ")的壳子),不是个真正的数组。于是后面加个get()操作就变成真正的数组了,于是可以用join()这样专属于数组的方法。
如:
$( " li " ).map( function( ){ return $(this).text( ); } ).get( ).join("%") // 拼接成字符串,中间用“%”隔开
补充:
map() 和get()也可以直接操纵数组代码如下:
var arrayObj=["www","xxx","ddd"]; var ww=$.map(arrayObj,function(i){ return i; }).join(","); console.log(ww); var tt=$(":checkbox").map(function(){ return this.value; }).get().join(","); console.log(tt);
以上就是jQuery中map()与get()的具体分析的详细内容,更多请关注其它相关文章!
推荐阅读
-
浅析Java中Map与HashMap,Hashtable,HashSet的区别
-
Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在
-
详解ES6中的Map与Set集合
-
详解ES6中的Map与Set集合
-
深入理解jQuery中live与bind方法的区别
-
jQuery中delegate与on的用法与区别示例介绍
-
JQuery中window.onload函数与$(document).ready()的区别实例讲解
-
jquery中html、val与text三者属性取值的联系与区别介绍
-
jquery中的查找parents与closest方法之间的区别
-
jQuery中ajax的get()方法用法实例教程