js中四种for循环
2021-05-30 00:05
标签:reject promise javascrip ref html blank query pre new 先说结论:遍历对象用for in 遍历数组用for of 不要用for in 遍历数组会出问题,实际中已经遇到了 1.传统的for 其实他挺好的,不会出错,效率也不错, 2.for in ? for-in 遍历原型链上的属性。所以遍历数组会出问题 3.forEach ? 不能break 和 return,默认是并行的 4.for of ? 不仅支持数组,还支持大多数类数组对象,也支持字符串遍历 forEach默认是并行的 https://www.cnblogs.com/lynn-z/p/13068866.html 这里foreach 会直接输出1,9,25,49,81 换成for of 就会每隔一秒输出一个 js中四种for循环 标签:reject promise javascrip ref html blank query pre new 原文地址:https://www.cnblogs.com/zcbj588/p/14700011.htmlfunction getAreaQueryGrid(res) {
let features = new ol.format.GeoJSON().readFeatures(res);
for (let i in features) {
if (typeof (features[i].values_) == "undefined") {
} else {
data.push(features[i].values_)
}
}
}
这里就是for in 最后会莫名其妙多几个
,这里加了个判断,其实不用for in 用传统的for 或者用for of 就能解决了。
for of不能遍历普通对象 let arr = [1,3,5,7,9];
console.log(arr);
for (let i = 0 ; i {
console.log("foreach============ "+element);//foreach也是,不是key
});
for ( i of arr){
console.log("for...of==========="+i);
}//注意,for of中的i就是本身,不是对应的key,不要写成arr[i]这种格式了
function sleep(num){
return new Promise ((resolve,reject)=>{
setInterval(()=>{
resolve(num*num)
},1000)
})
};
function test (){
arr.forEach(async x =>{
let res = await sleep(x);
console.log("foreach========="+res);
})
}
test()
async function testforof(){
for (x of arr) {
let res = await sleep(x)
console.log("testforof========"+res);
}
}
testforof()
上一篇:动手-文字检测-PSENet
下一篇:8天入门wpf—— 第四天 模板