jQuery函数库提供了一个jQuery对象(简写为$),这个对象本身是一个构造函数,可以用来生成jQuery对象的实例。有了实例以后,就可以调用许多针对实例的方法,它们定义jQuery.prototype对象上面(简写为$.fn)。
除了实例对象的方法以外,jQuery对象本身还提供一些方法(即直接定义jQuery对象上面),不需要生成实例就能使用的静态方法。由于这些静态的方法类似“通用工具”的性质,所以我们把它们称为“工具方法”(utilities)。
工具方法多为静态的。
- $.trim方法
$.trim方法用于移除字符串头部和尾部多余的空格。 - $.contains方法
$.contains方法返回一个布尔值,表示某个DOM元素(第二个参数)是否为另一个DOM元素(第一个参数)的下级元素。$.trim(' Hello ') // Hello $.contains(document.documentElement, document.body); // true $.contains(document.body, document.documentElement); // false参数只能是DOM元素,JQuery对象可以吗?
-
$.each,$.map
$.each方法用于遍历数组和对象,然后返回原始对象。它接受两个参数,分别是数据集合和回调函数。需要注意的,jQuery对象实例也有一个each方法($.fn.each),两者的作用差不多。
$.map方法也是用来遍历数组和对象,但是会返回一个新对象。
前者侧重原始数据输出,后者侧重原始数据处理返回?$.each([ 52, 97 ], function( index, value ) { console.log( index + ": " + value ); }); // 0: 52 // 1: 97 var obj = { p1: "hello", p2: "world" }; $.each( obj, function( key, value ) { console.log( key + ": " + value ); }); // p1: hello // p2: world var a = ["a", "b", "c", "d", "e"]; a = $.map(a, function (n, i){ return (n.toUpperCase() + i); }); // ["A0", "B1", "C2", "D3", "E4"] -
$.inArray
$.inArray方法返回一个值在数组中的位置(从0开始)。如果该值不在数组中,则返回-1。
-
$.extend
$.extend方法用于对象扩展,可以将多个对象合并进成一个对象。
View Code//$.inArray() var a = [1,2,3,4]; $.inArray(4,a) // 3 //$.extend() var o1 = {p1:'a',p2:'b'}; var o2 = {p1:'c'}; $.extend(o1,o2); o1.p1 // "c" //$.extend() var o1 = {p1:'a',p2:'b'}; var o2 = {p1:'c'}; var o = $.extend({},o1,o2); o // Object {p1: "c", p2: "b"}