
js循环遍历变量的方式有以下几种: 1.for(let i = 0i <5i++) 2.forEach 3.for of 4.for in 那么我们来看下这几种遍历方式的用法,以及退出循环的方法 1.for 这是最常用的遍历方法,for用来遍历数组,可以使用break 退出循环,使用continue来跳过本次循环。 2.forEach 除了抛出异常以外,没有办法中止或跳出 forEach() 循环。 并且forEach不会改变原来的数组 3.for of for of 可以迭代 可迭代对象 (包括 Array , Map , Set , String , TypedArray , arguments 对象等等) 对于for of,可以由break, throw 或return终止, 可以用continue略过此次循环。在这些情况下,迭代器关闭。var arr = [12,23,34,[234,344,34],23,'你好',[123,34],12]
var result = []
function isArray(obj) {
return Object.prototype.toString.call(obj) === '[object Array]'
}
function test(source) {
for(var i = 0,len = source.length i < len i++) {
var item = source[i]
if(isArray(item)) test(item)
else {
result.push(item)
}
}
}
test(arr)
console.log(result) //[12, 23, 34, 234, 344, 34, 23, "你好", 123, 34, 12]
思路就是用递归,但不清楚遍历后你想要具体进行什么操作,所以就把数组里的各项拆分并保存起来了。你可以在此基础上修改成想要的,剔除不是数组的元素或者中止遍历都可以。