jQuery.contains, jQuery.globalEval, jQuery.grep, jQuery.inArray, jQuery.isArray, jQuery.isEmptyObject
从这篇文章开始,我可能更多的是从api入手,根据api去分析源码。(api文档地址:http://www.css88.com/jqapi-1.9/)
1. 核心==》实用工具 ==》jQuery.contains( container, contained )
(1)用法:
检测一个元素是否在另一个元素之内。 不支持文档和注释节点。
注意: 第一个参数必须是一个DOM元素,不是一个jQuery对象或普通的JavaScript对象。
//jQuery,.contains底层调用的方法来自于JS的contains方法和compareDocumentPosition方法
1>. JS的contains方法是直接判断一个元素是否包含另一个元素,返回值为布尔值
2>. compareDocumentPosition() 方法比较两个节点,并返回描述它们在文档中位置的整数。
(2)源码
|
|
2. 核心==》实用工具 ==》jQuery.globalEval( code )
code 是用来执行的JavaScript代码,为 string 类型。它是在全局上下文下执行(这对加载外部动态脚本很重要)。
(1)用法:
|
|
(2)源码:
|
|
3.核心==》实用工具 ==》jQuery.grep( array, function(elementOfArray, indexInArray) [, invert ] )
$.grep() 函数使用指定的函数过滤数组中的元素,并返回过滤后的数组。
提示:源数组不会受到影响,过滤结果只反映在返回的结果数组中。
array : 用于查询元素的类数组对象.
elementOfArray : Function类型 指定的过滤函数。grep()方法为function提供了两个参数:
其一为当前迭代的数组元素,其二是当前迭代元素在数组中的索引。
invert : 可选。 Boolean类型 默认值为false,指定是否反转过滤结果。
(1)用法:
|
|
4.核心==》实用工具 ==》jQuery.inArray( value, array [, fromIndex ] )
$.inArray() 函数用于在数组中查找指定值,并返回它的索引值(如果没有找到,则返回-1)
提示:源数组不会受到影响,过滤结果只反映在返回的结果数组中。
value : 任意类型 用于查找的值。
array : Array类型 指定被查找的数组。
fromIndex :可选。Number类型 指定从数组的指定索引位置开始查找,默认为 0。
(1)用法:
|
|
(2)源码:
|
|
5. 核心==》实用工具 ==》jQuery.isArray( obj )
$.isArray()函数用于判断指定参数是否是一个数组。
obj : 任意类型 需要进行判断的任意值。
(1)用法:
|
|
(2)源码:
|
|
6. 核心==》实用工具 ==》jQuery.isEmptyObject( object )
检查对象是否为空(不包含任何属性)。
object : 将要检查是否为空的对象。
(1)用法:
|
|
(2)源码:
|
|
结束语:
这篇文章先写到这里,实用工具这一模块还有很多的方法,但不在这一篇文章中全部展现了,是为了避免篇幅太长。下一篇,接着聊。