我想知道以下代码是否会引入竞争条件:
rows.each(function () {
var current = this;
var doOperation = function () {
current.someMethod();
// do some operation using current
};
setTimeout(doOperation, 1);
});
在 settimeout 延迟期间,浏览器是否有可能开始执行循环的下一次迭代并更改“当前”,以便 doOperation 不会使用最初分配的值执行?