DOM无关的jQuery实用函数
一、实用函数的定义
定义在jQuery/$命名空间下不操作包装集的函数。一般来说这些使用函数要么操作除DOM元素以外的JavaScript对象,要么执行一些与Dom操作无关的操作。
二、操作JavaScript对象和集合
1、修建字符串 $.trim(value)
定义:删除传入的字符串开头和结尾处的空白字符,并返回修改后的结果
参数:value需要修改的字符串
返回值:修改后的字符串
$.trim($(‘#someFiled‘).val());
2、遍历属性和集合(无论遍历数组中的项目还是对象中的属性,使用的语法都是相同的)
$.each(container,callback)
定义:遍历传入的容器中的每一项,并为每一项调用传入的回调函数
参数:
container(数组|对象)一个数组,其每一项都将被遍历;或者一个对象,其每一个属性都会被遍历
callback: 回调函数的第一项是数组的下表或者对象属性的名称。第二个参数是数组项或者属性值。将传入的第二个参数设置为回调函数的上下文(this)
例子:
var anArray = [‘one‘,‘two‘,‘three‘]; $.each(anArray,function(n,value){ }) var anObject = { one:1, two:2, three:3}; $.each(anObject,function(name,value){ })
3、筛选数组
$.grep(array, callback, invert)
定义:遍历每个数组,为每个元素调用回调函数。回调函数的返回值决定是否应该将当前值收集到一个新数组中。
返回值:由收集的值组成数组
var badZips = $.grep(originalArray,funciton(value){ return value.match(/^\d{5}) !=null; },true);
4、转换数组 $.map(array, callback)
定义:遍历传入的数组,为数组的每一项调用回调函数,并将函数调用的返回值收集到一个新的数组中
参数:
callback: 一个函数,这个函数将接收两个值:当前的数据值和其在原始数组中的下标
返回值:由收集的值组成的数组
例:
var oneBased = $.map([0,1,2,3,4],function(value) {return value+1; });
5、搜索项的位置
$.inArray(value, array)
定义:返回传入的值第一次出现的下标
var index = $.inArray(2,[1,2,3,4]);
6、类数组对象转换为数组对象
$.mackArray(object)
定义:将出入的类数组对象转换为javaScript数组
返回值:javascirpt数组
7、合并数组
$.merge(array1, array2)
定义:将第二个数组中的值合并到第一个数组中并返回结果。
返回值:
合并后的第一个数组
例:
var a1 = [1,2,3]; var a2 = [5,6,7]; $.merge(a1,a2); a1将变成 [1,2,3,5,6,7];
8、拓展对象
$.extend(target,source1,source2....)
例子:
var target = { a:1, b:2, c:3}; var source1 = { c:4, d:5, e:6 }; var source2 = { e:7, f:8, g:9 }; $.extend(target,source1,source2); // => target = { a:1, b:2, c:4, d:5, e:7, f:8, g:9 }
9、预绑定函数上下文