深入淺析JavaScript中的in關(guān)鍵字和for-in循環(huán)
1.in關(guān)鍵字
屬性名 in 對象,用來判斷某個(gè)屬性在對象中是否存在與其嚴(yán)格相等的屬性名,返回boolean值
屬性名必須是字符串或數(shù)字
var obj = {a : 1,b : 2}console.log(’a’ in obj);//返回true,obj對象中存在a屬性名var arr = [12,11,10];console.log(12 in arr);//返回false,原因arr數(shù)組中12,11,10三個(gè)值對應(yīng)的屬性名分別是0,1,2
2.for-in循環(huán)
for(var prop in obj){//循環(huán)語句}
取出對象的所有屬性名,每次循環(huán)將其中一個(gè)屬性名賦值給變量prop,運(yùn)行循環(huán)體
利用該特點(diǎn)可以遍歷數(shù)組:
var arr= [’abc’,’123’,1,2,3];for(var prop in arr){console.log(prop);console.log(arr[prop]);}
使用for循環(huán)遍歷數(shù)組和for-in循環(huán)遍歷數(shù)組的區(qū)別:
遍歷稀松數(shù)組var arr = [1,2,3,,,,,4];
for(var i = 0; i < arr.length; i++){};//沒有值的地方會(huì)輸出undefined
for(var prop in arr){};//沒有值的地方不會(huì)輸出
創(chuàng)建一個(gè)長度為100的數(shù)組,給數(shù)組的每一項(xiàng)賦值為’abc’,使用for循環(huán)
var arr = new Array(100);for(var i = 0; i < arr.length; i++){arr[i] = ’abc’;}
不能使用for-in循環(huán)
到此這篇關(guān)于JavaScript中的in關(guān)鍵字和for-in循環(huán)的文章就介紹到這了,更多相關(guān)js in for-in循環(huán)內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. jsp網(wǎng)頁實(shí)現(xiàn)貪吃蛇小游戲2. jsp+servlet簡單實(shí)現(xiàn)上傳文件功能(保存目錄改進(jìn))3. JavaScript實(shí)現(xiàn)組件化和模塊化方法詳解4. ASP.NET MVC遍歷驗(yàn)證ModelState的錯(cuò)誤信息5. HTML5 Canvas繪制圖形從入門到精通6. .Net Core和RabbitMQ限制循環(huán)消費(fèi)的方法7. 淺談SpringMVC jsp前臺(tái)獲取參數(shù)的方式 EL表達(dá)式8. SpringMVC+Jquery實(shí)現(xiàn)Ajax功能9. ASP中if語句、select 、while循環(huán)的使用方法10. asp(vbs)Rs.Open和Conn.Execute的詳解和區(qū)別及&H0001的說明
