一、对象
- $.type() //返回参数类型,如果为null则返回null
- $.extend()//第一个参数为true时为深度复制
- $.isEmptyObject() //是否含有属性值,参数可以是非对象
- $.isPlainObject() //是否属于纯粹的对象(通过 "{}" 或者 "new Object" 创建的),如 {} 则返回true
- $.isFunction()
二、css样式
- $.css('属性名称','属性值')
- $.addClass()
- $.removeClass()
- $.attr(); //参数为'属性名称','属性值'或者属性名称 ,包括class属性
- $.hasClass()//是否含有某个class
三、数组
- $.isArray() //是否是数组
- $.makeArray() //将类数组对象转换成dom数组
- .toArray() //将jQuery包装对象转换成一个dom数组
- $.merge(); //合并两个对象数组
- $.concat(); //连接两个数组或者字符
- $.unique() //去除数组中重复的元素
$.each(array,function(index,value){
}) //遍历对象,数组和类数组的对象
$.map(array,function(value,index){
}) //数组对象或类数组的对象
jquery中的each函数和map函数的用法看起来差不多,但其实还是有一点区别的。
其中一个重要的区别是,each返回的是原来的数组,并不会新创建一个数组。而map方法会返回一个新的数组。如果在没有必要的情况下使用map,则有可能造成内存浪费。
例如:
- var items = [1,2,3,4];
- $.each(items, function() {
- alert('this is ' + this);
- });
- var newItems = $.map(items, function(i) {
- return i + 1;
- });
- // newItems is [2,3,4,5]
使用each时,改变的还是原来的items数组,而使用map时,不改变items,只是新建一个新的数组。
例如:
- var items = [0,1,2,3,4,5,6,7,8,9];
- var itemsLessThanEqualFive = $.map(items, function(i) {
- // removes all items > 5
- if (i > 5)
- return null;
- return i;
- });
- // itemsLessThanEqualFive = [0,1,2,3,4,5]
当需要对数组进行删除时也是如此,所以删除时错误使用each或map后果还是蛮严重的。
四、数据结构
$.queue //维护一个函数的列表,默认队列函数fx
五、字符串
$.trim()
六、数据
$.parseXML()
$.parseJSON()
$.data(key,value) $.data(key)
七、工具方法
$.contains() //检测一个dom节点是否含有另外的dom节点,例如:$.contains($("head")[0],$("title")[0])
$.isWindow() //区分window对象和iframe $.isWindow(window) //返回true
$.now() //获取当前时间
$.support(ajax) //是否支持创建XMLHttpRequest对象
$.globalEval() //在全局的上下文环境执行
$.map(array,function(value,index){
}) //数组对象或类数组的对象