jQuery中的字符串,数组,对象,URL操作
一.字符串操作
在jQuery 中,字符串的工具函数只有一个,就是去除字符串左右空格的工具函数:$.trim()。
var str = ‘ jQuery ‘;
alert($.trim(str)); //$.trim()去掉字符串两边空格
二.数组和对象操作
jQuery 为处理数组和对象提供了一些工具函数, 这些函数可以便利的给数组或对象进行遍历、筛选、搜索等操作。
$.each()<strong>遍历数组</strong>:$.each(arr,function (index, value) {$(‘#box‘).html()+index + ‘.‘ + value + ‘
‘);});
$.each()<strong>遍历对象</strong>:$.each(obj, function (name, fn) {name + ‘.‘ + ‘
‘);})
$.grep()<strong>数据筛选</strong>:$.grep(arr, function (element, index) {return element < 6 && index < 5;});
$.map()<strong>修改数据</strong>:= $.map(arr, function (element, index) {if (element < 6 && index < 5) {return element + 1;}});
$.inArray()<strong>获取查找到元素的下标</strong>:$.inArray(1, arr);
$.merge()<strong>合并两个数组</strong>:$.merge(arr, arr2);
$.unique()删除重复的 DOM 元素(不同版本jQuery结果可能不同)
var divs = $(‘div‘).get();
divs = divs.concat($(‘.box‘).get());
alert($(divs).size()); //7
$.unique(divs);
alert($(divs).size()); //5
.toArray()合并多个DOM 元素组成数组:alert($(‘li‘).toArray());
三.测试操作
在jQuery 中,数据有着各种类型和状态。有时,我们希望能通过判断数据的类型和状态做相应的操作。jQuery 提供了五组测试用的工具函数。
$.isArray(obj) 判断是否为数组对象,是返回true
$.isFunction(obj) 判断是否为函数,是返回true
$.isEmptyObject(obj) 判断是否为空对象,是返回 true
$.isPlainObjet(obj) 判断是否为纯粹对象(由{}或new Object()创造出的对象),是返回true
$.contains(原生父节点DOM,原生字节点DOM) 判断 DOM 节点是否含另一个 DOM 节点, 是返回 true,
$.type(data) 检测数据类型
$.isNumeric(data) 判断数据是否为数值
$.isWindow(data) 判断数据是否为window对象
四.URL 操作
URL 地址操作只有一个方法:$.param(),将对象的键值对转化为 URL 键值对字符串形式。
var obj = {name : ‘Lee‘,age : 100};
alert($.param(obj));//name=Lee&age=100
六.其他操作
jQuery 提供了一个预备绑定函数上下文的工具函数:$.proxy()。这个方法,可以解决诸如外部事件触发调用对象方法时this的指向问题。
//$.proxy()调整 this 指向
var obj = {
name : ‘Lee‘,
test : function () {alert(this.name);}
};
$(‘#box‘).click(obj.test); //指向的 this 为#box元素
$(‘#box‘).click($.proxy(obj, ‘test‘)); //指向的 this 为方法属于对象box