您的位置:首页 > 其它

工具函数

2015-11-27 20:18 232 查看


工具函数:指的是直接依附于jQuery对象,针对jQuery对象本身定义的方法,即全局性的函数,主要用于提供比如字符串、数组、对象等操作方面的遍历。

字符串操作

在jQuery提供了一个去除字符串左右空格的工具函数:$.trim(),去除字符串两边空格

  
var str="       jQuery         
";

  
alert(str);

  
alert($.trim(str));

数组和对象操作

可以便利的给数组或对象进行遍历、筛选、搜索等

数组遍历:

var arr=["a","b","c","d"];

  
$.each(arr,function(index,value){

  
$('#box').html($('#box').html()+"<br>"+index+","+value);});

 

对象遍历:

$.each(window,function(name,fn){

     
$('#box').html($('#box').html()+"<br>"+name)});

//name:window对象的属性名  
fn:为window方法

$.grep(array,function(element,index){})数据筛选

var arr=[1,2,3,78,56,9,24];

  
var getArr=$.grep(arr,function(element,index){

     
returnindex<4;//返回一个数组

  
});

  
alert(getArr);

$.map(array,function(element,index){})修改数据:

var arr=[1,2,3,78,56,9,24];

  
var arrMap=$.map(arr,function(element,index){

     
if(index>2&&element>9)

     
{return element+1;}});

   alert(arrMap);

$.inArray(element,array)查找元素下标:传递元素的某个值,查找对应的下标

  
var
arr=[1,2,3,78,56,9,24];

  
alert($.inArray(78,arr));

$.merge(arr1,arr2)合并两个数组

  
var arr1=[1,2,3];

  
var arr2=[4,5,6];

alert($.merge(arr1,arr2));

$.unique()删除重复的DOM元素

var divs=$('div').get();

  
divs=divs.concat($('#box').get());

  
alert($(divs).size());

   $.unique(divs);

  
alert($(divs).size());

测试操作

判断数据的状态和类型

函数名

说明

$.isArray(obj)

判断是否数组对象,是返回true

$.isFunction(obj)

判断是否为函数,是返回true

$.isEmptyObject(obj)

判断是否为空对象,是返回true

$.isPlainObjec
ee3f
t(obj)

判断是否为纯粹对象,是返回true

$.contains(obj)

判断DOM节点是否含有另一个DOM节点,是返回true

$.type(data)

判断数据类型

$.isNumeric(data)

判断数据是否为数值

$.isWindow(data)

判断数据是否为window对象

1、var
arr=[1,2,3];

alert($.isArray(arr));

2、var
fn=function(){};

  
alert($.isFunction(fn));

3、
var obj={};

  
alert($.isEmptyObject(obj));

4、纯粹对象:必须是由{}或new
Object()创造出的对象,若使用new Object(“name”)传递参数,返回类型已经不是object,而是字符串,所以就不再是纯粹对象,所以不能传参。

var obj=window;//window是内置对象

  
alert($.isPlainObject(obj));

5、alert($.contains($('#box').get(0),$('#pox').get(0)));

//判断box元素是否含有pox元素DOM节点

6、var
arr=[1,2,3];

  
alert($.type(arr));

7、  
var num=1.12;

  
alert($.isNumeric(num));

8、var
win=window;

alert($.isWindow(win));

URL操作:将对象的键值对转化为URL键值对字符串键值对

 
var obj={

     
name:"Lee",

     
age:100};

alert($.param(obj));

其他操作

预备绑定函数上下文的工具函数:$.proxy().可以解决诸如外部事件触发调用对象方法时this的指向问题。

$.proxy()是调整this指针的指向

var obj={

     
name:"Lee",

     
test:function(){

       
alert(this.name);

     
}};

$('#button').click($.proxy(obj,'test'));

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: