js的for in循環(huán)和java里foreach循環(huán)的區(qū)別分析
本文實(shí)例分析了js的for in循環(huán)和java里foreach循環(huán)的區(qū)別。分享給大家供大家參考。具體分析如下:
js里的for in循環(huán)定義如下:
obj可以是一個(gè)普通的js對(duì)象或者一個(gè)數(shù)組。如果obj是js對(duì)象,那么variable在遍歷中得到的是對(duì)象的屬性的名字,而不是屬性對(duì)應(yīng)的值。如果obj是數(shù)組,那么variable在遍歷中得到的是數(shù)組的下標(biāo)。
遍歷對(duì)象實(shí)驗(yàn):
v.field1 = "a";
v.field2 = "b";
for(var v in v) {
console.log(v);
}
控制臺(tái)下輸出:
field1
field2
遍歷數(shù)組實(shí)驗(yàn):
mycars[0] = "Saab"
mycars[1] = "Volvo"
mycars[2] = "BMW"
for (var x in mycars){
console.log(x);
}
控制臺(tái)輸出:
0
1
2
拿java的foreach循環(huán)來做對(duì)比,有兩大差別。首先java的foreach循環(huán)不會(huì)去枚舉一個(gè)java對(duì)象的屬性。其次,java的foreach循環(huán)枚舉一個(gè)數(shù)組或者任何實(shí)現(xiàn)了Iterable接口的對(duì)象的時(shí)候,for(Object o : list), 對(duì)象o得到的是list一個(gè)元素,而非在列表中的下標(biāo)。
java的遍歷代碼就不貼出來了。經(jīng)常寫后臺(tái)代碼,foreach循環(huán)很熟悉。寫前臺(tái)js代碼的時(shí)候,難免會(huì)套用java的語法,所以第一次用js的for in循環(huán)的時(shí)候犯錯(cuò)了。這次總結(jié)清楚,以后就不會(huì)犯錯(cuò)誤了。
希望本文所述對(duì)大家的javascript程序設(shè)計(jì)有所幫助。
相關(guān)文章
Javascript判斷對(duì)象是否相等實(shí)現(xiàn)代碼
想判斷2個(gè)js對(duì)象,是不是所有完全相同在表單頁(yè)面應(yīng)用是很常見的,接下來分享一段判斷代碼,感興趣的你可以參考下哈,希望可以幫助到你2013-03-03基于JS實(shí)現(xiàn)頁(yè)面懸浮框的實(shí)例代碼
這篇文章主要介紹了基于JS實(shí)現(xiàn)頁(yè)面懸浮框的實(shí)例代碼,代碼簡(jiǎn)單易懂,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-12-12js菜單點(diǎn)擊顯示或隱藏效果的簡(jiǎn)單實(shí)例
本篇文章主要是對(duì)js菜單點(diǎn)擊顯示或隱藏效果的簡(jiǎn)單實(shí)例進(jìn)行了介紹,需要的朋友可以過來參考下,希望對(duì)大家有所幫助2014-01-01JS在Array數(shù)組中按指定位置刪除或添加元素對(duì)象方法示例
這篇文章主要給大家介紹了關(guān)于JS在Array數(shù)組中按指定位置刪除或添加元素對(duì)象的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用JS具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11JavaScript正則表達(dá)式中g(shù)標(biāo)志詳解
正則的思想都是一樣的,但是具體的寫法會(huì)有所不同,下面這篇文章主要給大家介紹了關(guān)于JavaScript正則表達(dá)式中g(shù)標(biāo)志的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-03-03深入淺析javascript立即執(zhí)行函數(shù)
在Javascript中,任何function在執(zhí)行的時(shí)候都會(huì)創(chuàng)建一個(gè)執(zhí)行上下文,因?yàn)闉閒unction聲明的變量和function有可能只在該function內(nèi)部,這個(gè)上下文,在調(diào)用function的時(shí)候,提供了一種簡(jiǎn)單的方式來創(chuàng)建自由變量或私有子function。2015-10-10js 關(guān)鍵詞高亮(根據(jù)ID/tag高亮關(guān)鍵字)案例介紹
關(guān)鍵詞高亮在開發(fā)中會(huì)帶來很多的方便,關(guān)鍵詞高亮包括:根據(jù)ID高亮關(guān)鍵字/根據(jù)Tag名高亮關(guān)鍵字等等,感興趣的朋友可以了解下,希望本文對(duì)你有所幫助2013-01-01