本博文会挑选一些比较重要的内容进行分析解释,恭迎大家观看哦,加油,一起学习!!
数组和对象操作
1、$.each(object,[callback])
通用例遍方法,可用于例遍对象和数组。
回调函数拥有两个参数:第一个为对象的成员或数组的索引,第二个为对应变量或内容。如果需要退出 each 循环可使回调函数返回 false,其它返回值将被忽略。
不同于例遍 jQuery 对象的 $().each() 方法,此方法可用于例遍任何对象。
//遍历数组
$.each([2017,11,25],function(i,n)){
console.log(i,n);//0,2017 1,11 2,25
}
//遍历对象
$.each({name:"pingzi",sex:"girl"},function(i,n)){
console.log(i,n);//0,pingzi 1,girl
}
2、$.grep(array,callback,[invert])
使用过滤函数过滤数组元素。
此函数的前两个参数是必选的:待过滤数组和过滤函数callback,此函数将处理数组每个元素。第一个参数为当前元素,第二个参数为元素索引值。此函数应返回一个布尔值,返回true以保留元素,false以删除元素。
invert,是决定grep函数返回值的。默认为false,这个时候grep函数返回符合过滤函数return条件的新数组,就是删除了不符合条件的元素的新数组
$.grep([0,1,2],function(n,i){
return n>0;
})
//[1,2]
当invert设置为true时,grep函数返回被过滤掉的元素数组,内容是被删除的元素
$.grep([2017,11,25],function(n,i){
return n>1;
},true)
//[0,1]
3、$.map(arr|obj,callback)
将一个数组中的元素转换到另一个数组中。
通俗的说,就是把一个数组里面的元素,通过callback进行操作之后,返回一个新数组的过程。
//将原数组中每个元素+4转换成一个新数组
$.map([0,1,2],function(n){
return n+4;
});
//[4,5,6]
//原数组中每个元素扩展为一个包含本身和其值+1的数组,并转换为一个新的数组
//哎呦好气哦,这个题目为啥子一定要说的这么洋气,其实不就是返回数组本身和其本来的元素+1的数组嘛,有毛病哦
$.map([0,1,2],function(n){
return [n,n+1];
});
//[0,1,1,2,2,3]
4、$.inArray(val,arr)
参一:查找的内容
参二:待处理的数组
确定第一个参数在数组中的位置,从0开始计数,如没找到返回-1
var arr = ["pingzi",7,8,"child"];
$.inArray("pingzi",arr);0
$.inArray(9,arr);//-1
5、$.toArray()
把jq集合中所有的DOM元素转化为一个数组
<li>1</li>
<li>2</li>
<li>3</li>
$("li").toArray();//[<li>1</li>,<li>2</li>,<li>3</li>]
6、$.merge(fir,sec)
合并两个数组,返回结果会修改第一个数组的内容,第二个数组的元素加在第一个数组元素后面。
$.merge( [0,1,2], [2,3,4] );//[0,1,2,2,3,4]
测试操作
7、$.contains(container,contained)
一个DOM节点是否包含另一个DOM节点
container:DOM元素作为容器,可以包含其他元素
contained:DOM节点,可能被其他元素所包含
//检测一个元素是否包含另一个元素
$.contains(document.documentElement,document.body);//true
$.contains(document.body,document.documentElement);//false
8、$.type(obj)
检测obj的数组类型
jQuery.type(true) === "boolean"
jQuery.type(3) === "number"
jQuery.type("test") === "string"
jQuery.type(function(){}) === "function"
jQuery.type([]) === "array"
jQuery.type(new Date()) === "date"
jQuery.type(/test/) === "regexp"
9、$.isFunction(obj)
检测obj是不是函数
10、 $.isEmptyObject(obj)
jQuery 1.4 新增。测试对象是否是空对象(不包含任何属性)。
jQuery 1.4 中,这个方法既检测对象本身的属性,也检测从原型继承的属性
$.isEmptyObject({}) // true
$.isEmptyObject({ foo: "bar" }) // false
11、 $.isWindow(obj)
测试对象是否是窗口(有可能是Frame)。
12、 $.isNumeric(value)
确定它的参数是否是一个数字。
$.isNumeric() 方法检查它的参数是否代表一个数值。如果是这样,它返回 true。否则,它返回false。该参数可以是任何类型的
字符串操作
13、$.trim(str)
去掉字符串起始和结尾的空格
$.trim(" hello, how are you? ");
//"hello, how are you?"
插件编写
14、 $.fn.jquery
代表 jQuery 版本号的字符串。
//取得页面上当前使用的 jQuery 的版本号。
alert( 'You are running jQuery version: ' + $.fn.jquery );