each() 用于遍歷指定的對象和數(shù)組,并以對象的每個(gè)屬性(或數(shù)組的每個(gè)成員)作為上下文來遍歷執(zhí)行指定的函數(shù)。
map() 用于使用指定函數(shù)處理數(shù)組中的每個(gè)元素(或?qū)ο蟮拿總€(gè)屬性),并將處理結(jié)果封裝為新的數(shù)組返回。
boxModel 檢測當(dāng)前頁面中瀏覽器是否使用標(biāo)準(zhǔn)盒模型渲染頁面(從1.8版本開始,此屬性已經(jīng)移除)
browser 用來獲取useragent的包含標(biāo)志,讀取自 navigator.userAgent。(從1.9版本開始,此屬性已經(jīng)移除)
support 它們代表了不同的瀏覽器功能或錯(cuò)誤存在的屬性集合。當(dāng)他們不再需要在內(nèi)部以提高頁面的啟動(dòng)性能時(shí),這些特定屬性可能會被刪除。
contains() 檢查一個(gè)DOM元素是另一個(gè)DOM元素的后代。
extend() 將兩個(gè)或更多對象的內(nèi)容合并到第一個(gè)對象。
$.fn.extend() 一個(gè)對象的內(nèi)容合并到j(luò)Query的原型,以提供新的jQuery實(shí)例方法。
globalEval() 在全局上下文下執(zhí)行一些JavaScript代碼。
grep() 查找滿足過濾函數(shù)的數(shù)組元素。原始數(shù)組不受影響。
inArray() 在數(shù)組中查找指定值并返回它的索引(如果沒有找到,則返回-1)。
isArray() 檢測變量是一個(gè)數(shù)組。
isEmptyObject() 檢測對象是否為空(不包含任何屬性)。
isPlainObject() 測試對象是否是純粹的對象(通過 "{}" 或者 "new Object" 創(chuàng)建的)
isFunction() 檢測變量是否為一個(gè)Javascript 函數(shù)。
isNumeric() 檢測變量是否是一個(gè)數(shù)字。
isWindow() 檢測變量是否為一個(gè)window對象。
makeArray() 轉(zhuǎn)換一個(gè)類似數(shù)組的對象成為真正的JavaScript數(shù)組。
noop() 一個(gè)空函數(shù)
now() 返回一個(gè)數(shù)字,表示當(dāng)前時(shí)間。
parseHTML() 將字符串解析到一個(gè)DOM節(jié)點(diǎn)的數(shù)組中。
parseJSON() 接受一個(gè)標(biāo)準(zhǔn)格式的 JSON 字符串,并返回解析后的 JavaScript 對象。
parseXML() 解析一個(gè)字符串到一個(gè)XML文檔。
trim() 去掉字符串起始和結(jié)尾的空格。
type() 確定JavaScript內(nèi)置對象的類型,并返回小寫形式的類型名稱。
unique() 刪除數(shù)組中重復(fù)元素。只處理刪除DOM元素?cái)?shù)組,而不能處理字符串或者數(shù)字?jǐn)?shù)組。
$.each( object, callback)
var arr = {name:'tg',age:1};
$.each(arr,function(index,value){
console.log(this == value);
console.log(index + ':' +value);
});
// true
// name:tg
// true
// age:1
$.map( object, callback);
每次執(zhí)行callback函數(shù)的返回值將作為結(jié)果數(shù)組中的一個(gè)元素,如果函數(shù)的返回值為null或undefined,則不會被添加到結(jié)果數(shù)組中。
var arrs = [1,'tg',3];
var numberArray = $.map(arrs,function(value,index){
if(typeof value === 'number'){
return value;
};
});
console.log(numberArray);
// [1,3]
(3)support
它們代表了不同的瀏覽器功能或錯(cuò)誤存在的屬性集合。當(dāng)他們不再需要在內(nèi)部以提高頁面的啟動(dòng)性能時(shí),這些特定屬性可能會被刪除。
$.support
support的全部屬性:http://www.jquery123.com/jQuery.support/
(4)contains()
contains()方法檢查一個(gè)DOM元素是另一個(gè)DOM元素的后代。
$.contains( element, element )
兩個(gè)參數(shù)都是Element類型(第一個(gè)是祖先元素,第二個(gè)是后代元素),返回布爾值。
<div class="box"><div class="child"></div></div>
<div class="item"></div>
var parent = document.querySelector('.box');
var child = document.querySelector('.child');
var item = document.querySelector('.item');
console.log($.contains(parent,child)); // true
console.log($.contains(parent,item)); // false
(5)extend()
extend()將兩個(gè)或更多對象的內(nèi)容合并到第一個(gè)對象。
$.extend( [ deep ], target , object1 [, objectN... ] )
參數(shù)說明:
deep : 可選/Boolean類型指示是否深度合并對象,默認(rèn)為false。如果該值為true,且多個(gè)對象的某個(gè)同名屬性也都是對象,則該"屬性對象"的屬性也將進(jìn)行合并。
target : Object類型目標(biāo)對象,其他對象的成員屬性將被復(fù)制到該對象上。
object1 : 可選/Object類型第一個(gè)被合并的對象。
objectN : 可選/Object類型第N個(gè)被合并的對象。
var arr1 = {name:'tg'};
var arr2 = {name:'ab',age:1};
var arr3 = $.extend(arr1,arr2);
console.log(arr3);
// {name: "ab", age: 1}
如果有同名屬性,則以最后一個(gè)為主。
(6)$.fn.extend()
$.fn.extend()是jQuery擴(kuò)展方法,可以將一個(gè)對象的內(nèi)容合并到j(luò)Query的原型,以提供新的jQuery實(shí)例方法。
$.fn.extend( object )
$.fn.property = value;
$.fn.functionName = function(){}
例子:
$.fn.author = 'tg';
$.fn.isCurrentAuthor = function(name){
if(name === 'tg'){
return true;
};
return false;
};
var obj = {
age: 1
};
$.fn.extend(obj);
console.log($('body').author); // "tg"
console.log($('body').age); // 1
console.log($('.body').isCurrentAuthor('tg')); // true
(7)globalEval()
globalEval() 在全局上下文下執(zhí)行一些JavaScript代碼。
$.globalEval( code );
例子:
var name = 'tg';
function test(){
var name = 'tg2'
eval('console.log(name);');
$.globalEval('console.log(name);');
};
test();
// tg2
// tg
(8)grep()
grep() 查找滿足過濾函數(shù)的數(shù)組元素。原始數(shù)組不受影響。
$.grep( array, function [, invert ] );
參數(shù):
array :將被過濾的數(shù)組。
function : 指定的過濾函數(shù), 它提供兩個(gè)參數(shù):第一個(gè)為當(dāng)前迭代的數(shù)組元素,第二個(gè)是當(dāng)前迭代元素在數(shù)組中的索引。
invert : 可選的Boolean類型,默認(rèn)值為false。指定是否反轉(zhuǎn)過濾結(jié)果。
var arr = [1,-1,2,-3];
var grep = $.grep(arr,function(value,index){
return value > 0;
});
console.log(grep); // [1, 2]
(9)inArray()
inArray()用來在數(shù)組中查找指定值并返回它的索引(如果沒有找到,則返回-1)。
$.inArray( value, array [, fromIndex ] );
參數(shù):
value :用于查找的值
array : 指定被查找的數(shù)組
fromIndex : 可選,指定從數(shù)組的指定索引位置開始查找
注意:如果有多個(gè)相同的值,只會查找到第一個(gè)值的索引??膳袛嗍欠竦扔?1來確定是否存在指定值。
var arr = [1,-1,2,-3,1];
console.log($.inArray(1,arr)); // 0
(10)判斷數(shù)據(jù)類型方法
isArray() 檢測變量是一個(gè)數(shù)組。
isEmptyObject() 檢測對象是否為空(不包含任何屬性)。
isPlainObject() 測試對象是否是純粹的對象(通過 "{}" 或者 "new Object" 創(chuàng)建的)
isFunction() 檢測變量是否為一個(gè)Javascript 函數(shù)。
isNumeric() 檢測變量是否是一個(gè)數(shù)字。
(11)isWindow()
isWindow() 檢測變量是否為一個(gè)window對象。
$.isWindow( window ); // true
(12)makeArray()
makeArray()用來轉(zhuǎn)換一個(gè)類似數(shù)組的對象成為真正的JavaScript數(shù)組。
$.makeArray( object );
例子:
var obj = {name:'tg',age:1};
console.log($.isArray(obj)); // false
var arr = $.makeArray(obj);
console.log($.isArray(arr)); // true
(13) now()
now() 返回一個(gè)數(shù)字(時(shí)間戳),表示當(dāng)前時(shí)間。
$.now(); // 1477884817100
(14)解析字符串
parseHTML() 將字符串解析到一個(gè)DOM節(jié)點(diǎn)的數(shù)組中。
$.parseHTML( htmlString [, context ] [, keepScripts ] )
參數(shù):
htmlString : 需要解析并轉(zhuǎn)為DOM節(jié)點(diǎn)數(shù)組的HTML字符串。
context :(Element)指定在哪個(gè)Document中創(chuàng)建元素,默認(rèn)為當(dāng)前文檔的document。
keepScripts : 指定傳入的HTML字符串中是否包含腳本,默認(rèn)為false。
var str = '<div class="item">123<span>31</span></div>';
var html = $.parseHTML(str);
$('.box').append(html);
// <div class="box"><div class="item">123<span>31</span></div></div>
parseJSON() 接受一個(gè)標(biāo)準(zhǔn)格式的 JSON 字符串,并返回解析后的 JavaScript 對象。
$.parseJSON( jsonString );
jsonString必須是標(biāo)準(zhǔn)格式的JSON字符串,例如:屬性名稱必須加雙引號、字符串值也必須用雙引號。
例子:
var obj = $.parseJSON('{"name": "tg","age": 1}');
console.log(obj.name); // "tg"
parseXML() 解析一個(gè)字符串到一個(gè)XML文檔。
(15)trim()
trim()用來去掉字符串起始和結(jié)尾的空格。
$.trim( string );
例子:
var value = ' tg ';
console.log(value); // " tg "
console.log($.trim(value)); // "tg"
(16) type()
type()方法用來確定JavaScript內(nèi)置對象的類型,并返回小寫形式的類型名稱。
$.type( object );
例子:
$.type(true); // boolean
$.type( 2 ); // number
(17)unique()
unique方法用來刪除數(shù)組中重復(fù)元素。
$.unique( array );
注意:只處理刪除DOM元素?cái)?shù)組,而不能處理字符串或者數(shù)字?jǐn)?shù)組。
更多建議: