jQuery常用靜態方法


jQuery靜態方法

1、靜態方法和實例方法

1.1、定義一個類:function ClassName() {} 1.2、直接給這個類添加一個方法,這種直接添加給類的方法就是靜態方法 ClassName.staticMethod = function () {} 靜態方法通過類名調用:ClassName.staticMethod(); 1.3、通過prototype給這個類添加的方法是實例方法 ClassName.prototype.instanceMethod = function () {} 實例方法通過類的實例調用:var a = new ClassName(); a.instanceMethod();

2、$.each方法

類似原生jsArray對象的forEach()方法,兩者用法對比如下:

2.1、調用者:forEach方法通過數組實例調用,each方法通過jQuery類名調用

2.2、參數:arr.forEach(function(val,index){}); $.each(arr/obj,function(index,val){}); 故forEach方法只能遍歷數組,不能遍歷偽數組,如對象,each()方法兩者都可遍歷

2.3、返回值:forEach方法返回undefined,each()方法返回each方法的第一個參數 $.each()靜態方法不支持在回調函數中對遍歷的數組進行處理,回調函數不支持返回值。

2.4、示例程序:

 1 var arr=[1,2,3]; 
 2 var obj={name:"chz",age:20}; 
 3 var a;
 4 a=arr.forEach(function(val,index){ 
 5     console.log(index,val); 
 6 }); 
 7 console.log(a); //undefined 
 8 /*obj.forEach(function(val,index){ 
 9     console.log(val,index); 
10 });報錯*/ 
11 a=$.each(arr,function(index,val){
12     console.log(index,val); 
13 }); 
14 console.log(a); //(3) [1, 2, 3] 
15 a=$.each(obj,function(index,val){ 
16     console.log(index,val); 
17 }); 
18 console.log(a); //{name: "chz", age: 20}

3、$.map()方法

類似原生jsArray對象的map()方法,兩者用法對比如下:

3.1、調用者:原生map()方法通過數組實例調用,jQuery map()方法通過jQuery類名調用

3.2、參數: 原生map()方法:arr.map(function(val,index,array){});function中的3個參數 第一個參數: 當前遍歷到的元素 第二個參數: 當前遍歷到的索引 第三個參數: 當前被遍歷的數組 jQuery map()方法:$.map(arr/obj,function(val,index){}); 第一個參數: 要遍歷的數組或對象 第二個參數: 每遍歷一個元素之后執行的回調函數 回調函數的參數: 第一個參數: 遍歷到的元素 第二個參數: 遍歷到的索引 原生map()方法只能遍歷真數組,$.map()方法兩者能遍歷真數組和偽數組

3.3、返回值: 兩種map()方法都支持在回調函數中對遍歷的數據進行處理,回調函數支持返回值。回調函數沒有返回值時,原生map()方法默認返回一個長度和調用者一致的數組,數組中的元素全為undefined。$.map()方法會返回一個空數組。 回調函數有返回值時,兩者都返回回調函數的每一個返回值組成的數組,切不會改變原有的數組或對象。

3.4、示例程序: 

 1 var arr=[1,2,3];
 2 var obj={name:"chz",age:20};
 3 var a;
 4         
 5 a=arr.map(function(val,index,array){
 6     console.log(val,index,array);
 7 });
 8 console.log(a);            //(3) [undefined, undefined, undefined]
 9 a=arr.map(function(val,index,array){
10     return val*=2;
11 });
12 console.log(a,arr);        //(3) [2, 4, 6] ,(3) [1, 2, 3]
13 /*obj.forEach(function(val,index){
14     console.log(val,index);
15 });報錯*/
16 a=$.map(arr,function(val,index){
17     console.log(val,index);
18 });
19 console.log(a);        //[]
20 a=$.map(arr,function(val,index){
21     return val*=2;
22 });
23 console.log(a,arr);    //(3) [2, 4, 6] ,(3) [1, 2, 3]
24 a=$.map(obj,function(val,index){
25     console.log(val,index);
26 });
27 console.log(a);        //[]
28 a=$.map(obj,function(val,index){
29     return val+="good";
30 });
31 console.log(a,obj);    //(2) ["chzgood", "20good"] ,{name: "chz", age: 20}

4、$.trim()方法

用於去除字符串兩端的空格,傳入一個需要去除空格的字符串,返回去除空格之后的字符串,不影響原字符串。

5、jQuery判斷類型靜態方法

$.isWindow()、$.isArray()、$.isFunction() 判斷傳入的對象是否是window對象/真數組/函數,返回true/false。

6、$.holdReady()方法

接收true/false參數,參數為true時,暫停ready入口函數執行


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM