整理下JS中for循環和jQuery遍歷

JS中的兩種for循環-->
JS For Loop(for循環)
for (變量=開始值;變量<=結束值;變量=變量+步進值)
    需執行的代碼
}

JavaScript For...In 聲明
For...In(forin) 聲明用於遍歷數組或者對象的屬性(對數組或者對象的屬性進行循環操作)。

for ... in 循環中的代碼每執行一次,就會對數組的元素或者對象的屬性進行一次操作。
語法:

for(變量 in 對象){//變量,用來表示數組的角標(或對象的屬性,根據:對象[屬性] 即可取得該對象屬性的值value)
    在此執行代碼
}

var a=[3,2,55,12];
for(var i=0;i< a.length;i++){
   document.write("普通for: "+a[i]+"");
}
//for/in 遍歷數組
for(j in a){
    document.write(" 增強for: "+a[j]+"");
}
//for/in 遍歷對象的屬性
var person={fname:"Bill",lname:"Gates",age:56}; //對象,可以(對象.屬性)獲得對應的屬性值,如person.fname-->Bill
for (x in person){  
    document.write(person[x]+" ");//Bill Gates 56
}
/*
這裏擴展下
▲js中創建對象的兩種方式:new Object()和{} 
如-->
javascript中所有對象都是Object實例
JavaScript對象實際上是一個key:value集合結構
第一種 new 創建Object 及其子類對象 
var o = new Object();
第二種 { }
var product = {};
js中對象就是一個容器,存放key:value

*/

 

 同樣也收集下jQuery中的遍歷,便於對比

jQuery的遍歷:-->


★$.each(object, [callback]);通用遍歷方法,可用於遍歷對象和數組。
它不同於遍歷 jQuery 對象的 $().each() 方法,此方法可用於遍歷任何對象。回調函數擁有兩個參數:第一個爲對象的成員或數組的索引,第二個爲對應變量或內容。如果需要退出 each 循環可使回調函數返回 false,其它返回值將被忽略。
//遍歷數組
$.each( [0,1,2], function(i, n){
  alert( "Item #" + i + ": " + n );
});
//遍歷對象
$.each( { name: "John", lang: "JS" }, function(i, n){
  alert( "Name: " + i + ", Value: " + n );
});

★$().each() 方法,可遍歷任何對象
返回值:jQuery   $().each(callback) 以每一個匹配的元素作爲上下文來執行一個函數。
可以使用 'return' 來提前跳出 each() 循環。
$("img").each(function(){});
$("#id").each(function(i){});
$("div").each(function(index, domEle){});//index是元素的索引值,domEle是每一個DOM對象本身,this==domEle 
index:代表元素的下標(索引值)。
domEle:DOM元素對象

僅供參考,便於查看

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章