Javascript 为什么这段代码在JSBin中重复运行时运行方式不同?
在JSBin上,此代码每次运行时都会返回不同的数字,但这里它不是作为堆栈片段:Javascript 为什么这段代码在JSBin中重复运行时运行方式不同?,javascript,Javascript,在JSBin上,此代码每次运行时都会返回不同的数字,但这里它不是作为堆栈片段: 函数素数(num){ var素数=[]; var i=1; 而(primes.length如果您查看chrome控制台,您可以看到以下警告。这就是为什么在某个阶段会随机断开循环 退出线路6处的潜在无限回路。要禁用回路保护: 在代码中添加“//noprotect” 如果您在下面的代码上方添加一行//noprotect,并在JSBin中运行它,那么它将始终给出正确的答案 // noprotect function pr
函数素数(num){
var素数=[];
var i=1;
而(primes.length如果您查看chrome控制台,您可以看到以下警告。这就是为什么在某个阶段会随机断开循环
退出线路6处的潜在无限回路。要禁用回路保护:
在代码中添加“//noprotect”
如果您在下面的代码上方添加一行//noprotect
,并在JSBin中运行它,那么它将始终给出正确的答案
// noprotect
function prime(num) {
var primes = [];
var i = 1;
while (primes.length <= num) {
if (isPrime(i)) {
primes.push(i);
}
i++;
}
.....
//无保护
函数素数(num){
var素数=[];
var i=1;
虽然(primes.length,当我在JSbin中运行它时是这样的…,奇怪的是,这里的代码片段给出了正确的答案,但不是在JSbin上。是的,我在跟踪bin链接时做的第一件事。是的,在查看开发控制台之前第一次查看它时很奇怪:-)