我有一个函数,我收到一个值,并根据该值在函数内部执行另一个for
过程。 for
循环不同,但内部的过程是相同的。我想在for
内调用一个函数,然后在第一个函数中更改局部变量。一个例子是:
// option = 1 to get first prime number from 1-100, 2 to get the last
function GetPrimeNumber(option){
var number;
if(option == 1){
for(i=1; i < 101; i++){
DetermineIfPrime(i);
}
}
else if (option == 2){
for(i=100; i > 0; i--){
DetermineIfPrime(i);
}
}
}
然后让我的函数确定数字
function DetermineIfPrime(a){
//Procedure
if (a == prime){
number = a;
break;
}
}
有没有办法可以将a
到number
或break
的值返回到上一个函数?
答案 0 :(得分:0)
return
的 DetermineIfPrime
并将返回的值设置为number
,如下所示:
function GetPrimeNumber(option){
var number;
if (option == 1) {
for(i=1; i < 101; i++) {
number = DetermineIfPrime(i);
}
} else if (option == 2) {
for (i=100; i > 0; i--) {
number = DetermineIfPrime(i);
}
}
}
function DetermineIfPrime(a){
//Procedure
if (a == prime){
return a;
}
}
答案 1 :(得分:0)
数字是您的GetPrimeNumber函数的本地数字,因此如果您希望DetermineIfPrime函数能够“看到”它,您需要在GetPrimerNumber中定义它。
这不是可行的方法,你应该从函数中返回值并将其赋值给你的本地var。