如何从函数中获取变量?特别是一个数组

How to grab variables from a function ? Specifically an array

本文关键字:数组 一个 特别是 函数 变量 获取      更新时间:2023-09-26

如果一个函数中有一个数组,我想从这个数组中获取一个值,这取决于它是否存在,我将如何使用JavaScript做到这一点?

要很好地解释这个问题,请查看下面的代码。 。

如果我们有一个函数:

function updateData(dataObj) {
    for (var i = 0; i < dataObj.length; i++) {
        var id = dataObj[i]['id'];
    }
    grabID(dataObj);
}

正在尝试获取任何具有值的id,因此我创建了grabID函数:

function grabID(dataObj) {
    for (var i=0; i< dataObj.length; i++) {
        var id = dataObj[i]['id'];
        if (typeof(id) == 'string') {
            //take that id and use it in the function below this one
        }
        else {
            continue;
        }       
    }      
}

现在这是我想放置id的函数,所以我可以画一个图形:

function drawGraph() {
    var id = //the id grabbed in the grabID function
             //use this id for drawing purposes
}

所以我唯一需要的帮助是如何从grabID函数中引入这个id字符串。评论的部分是我需要帮助的部分。

我希望这段代码有助于解释我正在寻找的内容。我知道我可能写了不必要的函数或代码行,但这就是我现在脑海中的想法。 函数 updateData 最初不仅用于抓取一个id(具有值的id)。这就是为什么我创建了另一个名为 grabID 的函数。

您可以调用 grabID 函数并在其中返回 ID,然后将调用结果传递给 drawGraph 函数:

function grabID(dataObj) {
          for(var i=0; i< dataObj.length; i++)
          {
              var id = dataObj[i]['id'];
              if(typeof(id) == 'string')
                   //take that id and use it in the function below this one
                   return id;
              else
                   continue;
          }
    // return null if no ID was retrieved
    return null;     
}
function updateData(dataObj) {
    for (var i = 0; i < dataObj.length; i++) {
       var id = dataObj[i]['id'];
    }
    var id = grabID(dataObj);
    if(id !== null) drawGraph(id);
}
function drawGraph(grabbedId)
{
    var id = grabbedId; //the id grabbed in the grabID function
    //use this id for drawing purposes
}

尝试从grabID函数中调用drawGraph,如下所示。 使用 id 变量作为参数来drawGraph

function grabID(dataObj) {
    for(var i=0; i< dataObj.length; i++){
        var id = dataObj[i]['id'];
        if(typeof(id) == 'string')
            drawGraph(id)
        else
            continue;
        }     
    }
}      
function drawGraph()
{
      var id = //the id grabbed in the grabID function
      //use this id for drawing purposes
}