博客已迁移到CSDN《https://blog.csdn.net/qq_33375499》
1 数组和对象操作
1、jQuery.extend([deep,] target, object1, [objectN])
用一个或多个其他对象来扩展一个对象,返回被扩展的对象。
如果不指定target,则给jQuery命名空间本身进行扩展。这有助于插件作者为jQuery增加新方法。如果第一个参数设置为true,则jQuery返回一个深层次的副本,递归地复制找到的任何对象。否则的话,副本会与原对像共享结构。为定义的属性将不会被复制,然而从对象的原型继续的属性将会被复制。
参数:
(1) deep:如果设置为true,则递归合并。
(2) target:被扩展的对象。
(3) object1:待合并到target对象的对象。
(4) objectN:待合并到target对象的对象。
// 合并 settings 和 options var settings = { validate: false, limit: 5, name: "foo" }; var options = { validate: true, name: "bar" }; jQuery.extend(settings, options); // settings == { validate: true, limit: 5, name: "bar" }
2、jQuery.grep(array, callback, [invert])
使用过滤函数来过滤数组元素。过滤函数callback必须返回true以保留元素,返回false将删除元素。
参数:
(1) array:待过滤的数组。
(2) callback:function(n, i){....} ,第一个参数为当前元素,第二个参为索引。过滤函数callback必须返回true以保留元素,返回false将删除元素。
(3) invert:如果invert设置为false,则函数返回数组中由过滤函数返回true的元素,如果设置为true,则返回false的元素。
3、jQuery.map(arr, callback)
将一个数组中的元素转换到另一个数组中。作为参数的转换函数会为每个数组元素调用,而且会给这个转换函数传递一个表示被转换的元素作为参数。转换函数可以返回转换后的值、null(删除数组中的项目)或一个包含值的数组,并扩展至原始数组中。
参数:
(1) array, callback:
array:带转换数组。
callback:function(n){....},n为当前元素。
// 原数组中每个元素扩展为一个包含其本身和其值加 1 的数组,并转换为一个新数组。 $.map( [0,1,2], function(n){ return [ n, n + 1 ]; }); // [0, 1, 1, 2, 2, 3]
4、jQuery.inArray(value, array, [fromIndex])
确定第一个参数在数组中的位置,从 0 开始计数(如果没找到则返回 -1)。
参数:
(1) value:用于在数组中查找的值。
(2) array:待查找的数组。
(3) fromIndex:用来搜索数组队列的起始索引,默认为 0 。
5、jQuery.merge(first, second)
合并两个数组。返回结果会修改第一个数组的内容——第一个数组的元素后面跟着第二个数组的元素。
6、jQuery.unique(array)
删除数组中重复元素。值处理删除 DOM 元素数组,而不能处理字符串或数字数组。
7、jQuery.parseJSON(json)
接受一个 JSON 字符串,返回解析后的对象。