从不同的函数中选择数组中的随机索引并调用变量。的JavaScript

策克

我无法访问通过randomTest选择的随机索引。当我在analytics_test()中调用randomTest时,收到一个未定义的错误。我觉得好像我实际上并没有访问此变量。有任何解决此问题的技巧或想法吗?我将不胜感激,谢谢!

//This function creates a loop for 5 random numbers. Each index in the array is given a variable
function createTest_Var() {
    var testNumber = [];
    var i; 
    for (i = 0; i < 5; i++) {
        testNumber[i] = (Math.random() * 10);
   }
 var randomTest = testNumber[Math.floor(Math.random() * testNumber[i].length)]; 
return testNumber;
}
//This function takes chooses a random index from the array and compares it to the random number "y".
function analytics_test() {
    var y = (Math.random() * 10);
    var i = createTest_Var.randomTest;
        if (y < i) {
         //Just a test console.log ("the random numbers are: " + (Math.random() * 10));
            console.log ("It is greater! " + i + "<" + y);
        }
        else {
            console.log("not big enough " + i + ">" + y);
        }
}
亭子

几个问题:

  • randomTest永远不会获得它的值,因为您在到达该代码之前就退出了该函数。但是,即使您将return语句移到该语句之后,也无法从函数体外部对其进行访问。
  • 您永远不会执行该功能createTest_Var该代码createTest_Var.randomTest尝试访问该功能对象的不存在的属性。要调用该函数,您应该编写createTest_Var()
  • 即使调用它,由于第一个问题,您实际上仍然没有从生成的数组中选择随机元素。为此,您可以编写一个单独的函数,并按如下方式调用它:pickFromArray(createTest_Var())
  • testNumber[i].length是不正确的:您想要数组的长度,而不是数组的第i个元素,所以请写testNumber.length

这是更正的代码:

//This function creates a loop for 5 random numbers. Each element in the array is given a value
function createTest_Var() {
  var testNumber = [];
  var i; 
  for (i = 0; i < 5; i++) {
    testNumber[i] = (Math.random() * 10);
  }
  return testNumber;
}

// Function to pick random element from array
function pickFromArray(testNumber) {
  return testNumber[Math.floor(Math.random() * testNumber.length)]; 
}

//This function takes chooses a random element from the array and compares it to the random number "y".
function analytics_test() {
  var y = (Math.random() * 10);
  var i = pickFromArray(createTest_Var());
  if (y < i) {
    //Just a test console.log ("the random numbers are: " + (Math.random() * 10));
    console.log ("It is greater! " + i + "<" + y);
  }
  else {
    console.log("not big enough " + i + ">" + y);
  }
}

analytics_test();

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从不同的数组中选择随机字符串

来自分类Dev

从不同的变量中选择数据标签

来自分类Dev

从不同的数组中选择值

来自分类Dev

从JavaScript中的数组数组中选择随机数组

来自分类Dev

从不同的行中选择唯一的随机值

来自分类Dev

根据包含列名的变量从不同的列中选择值

来自分类Dev

从不同的React文件中调用函数

来自分类Dev

从不同的表格中选择

来自分类Dev

Python 使用当前模块中定义的变量从不同模块调用函数

来自分类Dev

Javascript - 从数组中选择随机变量但只有一次

来自分类Dev

从不同页面的不同页面调用javascript函数

来自分类Dev

选择,存储,从不同的表中选择

来自分类Dev

从数组中选择一个随机变量

来自分类Dev

如何在JavaScript中调用函数数组的索引号

来自分类Dev

从不同的函数访问变量

来自分类Dev

在选择器中从不同的类调用 func

来自分类Dev

从不同的文件调用 JavaScript 构造函数方法 - Rails

来自分类Dev

尝试从不同的表中选择行

来自分类Dev

MySQL从不同的表中选择ID

来自分类Dev

从不同的表中选择多行

来自分类Dev

根据条件从不同的表中选择

来自分类Dev

从不同的类调用一个类中的函数

来自分类Dev

从不同的隔离中调用顶级异步函数

来自分类Dev

Swift:从不同的选项卡中调用函数

来自分类Dev

从数组中选择随机项目

来自分类Dev

从数组中选择随机项目

来自分类Dev

从数组中选择随机元素

来自分类Dev

从数组中选择随机值并使用 Javascript 设置 RGB 颜色

来自分类Dev

从不同的 div 调用不同的函数