Pet*_*son 1 javascript loops for-loop
我一直在跋涉一些Javascript代码并遇到了这个循环
for (var w = window; w.window === window.window.window; w = w.window) {
w.w = w.prompt("Enter password");
if (w.w === "swordfish") break;
w.alert("Incorrect password.");
}
w.alert("Welcome, authenticated user!");
Run Code Online (Sandbox Code Playgroud)
这段代码对我来说没有任何意义.世界上到底发生了什么,它是如何运作的?
window总是等于window.window....window,所以循环永远不会结束,除非密码是正确的.
一个for(;;)循环具有以下特征:
for (init; test; increment);
Run Code Online (Sandbox Code Playgroud)
它一直持续到test假.由于window === window始终为true,因此循环会一直运行,直到break遇到为止.澄清,w总是指window.