Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/411.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何调用一个在循环中且必须保持在循环中的函数_Javascript - Fatal编程技术网

Javascript 如何调用一个在循环中且必须保持在循环中的函数

Javascript 如何调用一个在循环中且必须保持在循环中的函数,javascript,Javascript,我知道这可能是个蹩脚的问题,但我一直在思考如何从循环中的函数中获取值。 你们能告诉我该怎么做吗 代码如下所示: function radioCreator(){ //creates radio button } function main(){ for (i = 0; i < nQ; i++) { radioCreator("answerOption", "answer" + (i + 1)); for (j = 0; j < nA;

我知道这可能是个蹩脚的问题,但我一直在思考如何从循环中的函数中获取值。 你们能告诉我该怎么做吗

代码如下所示:

  function radioCreator(){
  //creates radio button
  }

  function main(){
   for (i = 0; i < nQ; i++) {
      radioCreator("answerOption", "answer" + (i + 1));
      for (j = 0; j < nA; j++) {
      //here I got some more code 

           function finished(){
               for (i = 0; i < nQ; i++) {
                   for (j = 0; j < nA; j++) {
            if (document.getElementsByName("answer"+ (i + 1))[j].checked.value == true){
                goodAnswers ++;
                console.log(goodAnswers);
            } else {
                console.log("No good answers");
            }
                             }
                        }

                    }
                  }
             }
      }
      function getAnswers(){
      finished();
      console.log(goodAnswers);
      }

我得到了,但我想知道:我想得到goodAnswers变量值,我如何从循环外部执行functionfinished(),并将指针传递给函数。

main
函数中使用一些返回对象 然后像这样调用
finished
函数
main().finished()

函数radioCreator(){
//创建单选按钮
}
函数main(){
对于(i=0;i
为什么循环中有函数?将完成的函数移到主函数外如果我将其移到主函数外,它不会丢失I和j变量值吗?您可以将
nQ
和其他需要作为参数的变量传递到
finished
函数外请添加其他部分,作为一个工作示例。Uff我认为这是我一直在寻找的东西,为我辩护,我知道这一点,但我的大脑完全失去了知觉谢谢!
 Uncaught ReferenceError: finished is not defined
function radioCreator() {
//creates radio button
}

function main() {
for (i = 0; i < nQ; i++) {
  radioCreator("answerOption", "answer" + (i + 1));
  for (j = 0; j < nA; j++) {
    //here I got some more code 
return {
   finished : function() {
      for (i = 0; i < nQ; i++) {
        for (j = 0; j < nA; j++) {
          if (document.getElementsByName("answer" + (i + 1))[j].checked.value == true) {
            goodAnswers++;
            console.log(goodAnswers);
          } else {
            console.log("No good answers");
          }
        }
      }

    }
    }
  }
}
}

function getAnswers() {
main().finished();
console.log(goodAnswers);
}