我知道这是js的问题,这个问题不知道到哪去问了,有知道的给我说下。
js里有多种循环 for in, for of, forEach
如果有可能在循环体里改变所循环的容器,这三种循环是不是都不支持啊,所以我是不是有必要循环前先把容器复制一遍?
我知道这是js的问题,这个问题不知道到哪去问了,有知道的给我说下。
js里有多种循环 for in, for of, forEach
如果有可能在循环体里改变所循环的容器,这三种循环是不是都不支持啊,所以我是不是有必要循环前先把容器复制一遍?
我也没研究过不过你可以查一下 js 的标准 http://www.ecma-international.org/publications/standards/Ecma-262.htm
我个人建议不要在迭代器未结束前改变容器。
最好是自己用普通的 for 循环来迭代。
for of 是es6标准, 走的是容器内实现的Iterator. 但是浏览器转义支持的效果就不知道了. for in和foreach一个对Object一个对数组 , 循环中容器貌似都不会被影响, 循环退出后容器改变. 建议写几个例子试试