这篇文章主要介绍了JavaScript中循环遍历Array与Map的各种方法,利用的都是js入门学习中的基础知识,需要的朋友可以参考下
js循环数组各种方法
eg1:
for (var i = 0; i < myStringArray.length; i++) {
alert(myStringArray[i]);
//Do something
}
eg2:
Array.prototype.foo = "foo!";
var array = ['a', 'b', 'c'];
for (var i in array) {
alert(array[i]);
}
for(var i in this.$GLOBAL_DETAIL.album_photo_ids){if(this.$GLOBAL_DETAIL.album_photo_ids[i] == "3487675024077108") alert(this.$GLOBAL_DETAIL.album_photo_ids[i]);}
eg3:
[1,2,3,4].map( function(item) {
alert(item);
})
eg4:
var x = [1,2,3,4].map( function(item) { return item * 10; } );
// And now x is [10,20,30,40]
eg5:
var myStringArray = [ "Hello", "World" ]
var len = myStringArray.length
for (var i=0; i<len; ++i) {
if (i in myStringArray) {
var s = myStringArray[i];
... do something with s ...
}
}
eg6:
var myStringArray = [ "Hello", "World" ]
myStringArray.forEach( function(s) {
... do something with s ...
} )
eg7:
var i=0,item,items = ['one','two','three'];
while(item=items[i++]){
console.log(item);
}
// logs: 'one','two','three'
and for the reverse order, an even more efficient loop
var items = ['one','two','three'], i=items.length;
while(i--){
console.log(items[i]);
}
// logs: 'three','two','one'
or the classical for loop
var items = ['one','two','three']
for(var i=0,l=items.length; i < l ; i++){
console.log(items[i]);
}
// logs: 'one','two','three'
eg8:
var myStringArray = ['Hello', 'World']; // array uses [] not {}
for (var i in myStringArray) {
console.log(i + ' -> ' + myStringArray[i]); // i is the index/key, not the item
}
js循环map,获取所有的key和value
eg1:
//Page地址
pageUrl : {
menu : "loadPage.htm?url=/collect/menu.page", // 进入菜单页面
guangfaPage : "loadPage.htm?url=/collect/menu.page", // 进入广发信息收集页面
pinganPage : "loadPage.htm?url=/collect/menu.page", // 进入平安信息收集页面
nuonuoPage : "loadPage.htm?url=/collect/menu.page", // 进入诺诺信息收集页面
youbangPage : "loadPage.htm?url=/collect/menu.page", // 进入友邦信息收集页面
inputMobileNo : "loadPage.htm?url=/collect/inputMobileNo.page", // 进入输入手机号页面
readIdCard : "loadPage.htm?url=/collect/readIdCard.page", // 进入读取身份证页面
member : "loadPage.htm?url=/collect/member.page", // 进入输入会员卡号页面
bankCard : "loadPage.htm?url=/collect/bankCard.page", // 进入插入银行卡页面
url : "loadPage.htm?url=/collect/url.page" // 进入跳转url页面
},
for(var key in this.pageUrl){
alert(key+" : "+this.pageUrl[key]);
}
eg2:
var obj = {
"a": 1,
"b": 2,
"c": 3
};
for (var prop in obj) {
if (obj.hasOwnProperty(prop)) {
// or if (Object.prototype.hasOwnProperty.call(obj,prop)) for safety...
alert("prop: " + prop + " value: " + obj[prop])
}
}
双重Map循环
eg:
var msg = "";
for(var key in Pin) {
for(var i in Pin[key]){
msg+=i+": "+Pin[key][i]+"\n";
}
}
alert(msg);