jQuery常用数据处理方法小结

时间:2021-05-26

本文实例总结了jQuery常用数据处理方法。分享给大家供大家参考。具体如下:

$.trim():删除字符串前后的空白字符。

var str = ' 薯条 ';var formatStr = $.trim(str); //'薯条'

$.param():数组或者对象序列化。

var obj = { name: 'dog', count: 10};var str = $.param(obj); //"name=dog&count=10"

$.isArray():检测是否为数组。
$.isFunction():检测是否为函数类型。
$.each(obj, [callback]):遍历数组或者集合对象。obj是要遍历的集合对象,callback表示回调函数,该函数将在遍历每个成员时出发。回调函数包含两个参数,第一个参数为对象成员或数组的索引,第二个参数为对应的值。

var a = [x,y,z];$.each(a, function(index, value) { console.log(index); //0,1,2 console.log(value); //x,y,z});var b = {x:1, y:2, z:3};$.each(b, function(key, value)) { console.log(key); //x,y,z console.log(value); //1,2,3}

说明:如果中途要退出each()循环,可以在回调函数中返回false,其他返回值将被忽略。

$.each()和$(selector).each()功能相同,但$.each()可以遍历任何对象或数组,而$(selector).each()只能遍历当前选择器选择的jQuery对象。

$.makeArray():把类数组对象转换为数组对象。所谓类数组对象,就是拥有length属性,索引从0到length-1。但是这些对象不能够调用数组方法。

var arr = $.makeArray($('li')); //类数组对象转换为数组$('ul').html(arr.reverse()); //可以调用数组的reverse()方法了

$.grep():根据过滤函数过滤掉数组中不符合条件的元素。

$.grep(array, callback, [invert]);

说明:参数array表示要过滤的数组,callback表示过滤函数。如果过滤函数返回true,则保留元素,如果过滤函数返回false,则删除元素。参数invert,可选,如果为false或者没有设置,则返回数组中由过滤函数返回true的元素;如果该参数为true,则返回过滤函数中返回false的元素。

var a = [1,2,3,4,5];a = $.grep(a, function(value, index)) { return value > 3; //a现在为[4,5]});var b = [1,2,3,4,5];b = $.grep(b, function(value, index)) { return value > 3; //b现在为[1,2,3]}, true);

$.map():映射数组。
$.map(array, callback);

var a = [1,2,3,4];a = $.map(a, function(elem)) { return elem * 2; //a现在为[2,4,6,8]});

$.merge():合并数组。
说明:接受两个数组参数。

var a = [1,2,3];var b = [4,5];var c = $.merge(a,b); //c为[1,2,3,4,5];

$.unique():删除DOM元素数组中的重复项。

...<a id="1" class="link link1"></a><a id="2" class="link"></a><a id="3" class="link"></a>...var $link = $('.link'); //包含#1,#2,#3var $firstLink = $('.link1'); //包含#1var $links = $.merge($link, $firstLink); //包含#1,#2,#3,#1var $linkList = $.unique($link); //包含#1,#2,#3

说明:只能处理DOM元素数组,不能处理字符串或者JavaScript数组。

希望本文所述对大家的jQuery程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章