用于javascript和jquery的循环数组问题 var-link=[]; 对于(var x=0;x

用于javascript和jquery的循环数组问题 var-link=[]; 对于(var x=0;x,javascript,Javascript,您好,我是一名初学者,我正在努力理解代码。我到处都找过,但我无法完全理解这段代码 var link = []; for(var x = 0; x < id_ion['ions'].length; x++) { var source, target; if(id_ion['ions'][x]['ID1'] == data.main[0].ID1) { source = id_ion['ions'][x]['ID1']; target

您好,我是一名初学者,我正在努力理解代码。我到处都找过,但我无法完全理解这段代码

var link = [];

for(var x = 0; x < id_ion['ions'].length; x++) {
    var source,
    target;

    if(id_ion['ions'][x]['ID1'] == data.main[0].ID1) {
        source = id_ion['ions'][x]['ID1'];
        target = id_ion['ions'][x]['ID2'];
    } else {
        source = id_ion['ions'][x]['ID2'];
        target = id_ion['ions'][x]['ID1'];
    }
    var_edges.push({data:{
            source: source,      
            target: target,
            exp: id_ion['ions'][x]['exp'],
            pub: id_ion['ions'][x]['pub'],
            name: id_ion['ions'][x]['name'],
            age: id_ion['ions'][x]['age']
    }});
用于使用if语句将表元素放入变量中

var source, target;
if(id_ion['ions'][x]['ID1'] == data.main[0].ID1) {
   source = id_ion['ions'][x]['ID1'];
   target = id_ion['ions'][x]['ID2'];
} else {
   source = id_ion['ions'][x]['ID2'];
   target = id_ion['ions'][x]['ID1'];
}
通过
推送
,用于创建其他数组

用于使用if语句将表元素放入变量中

var source, target;
if(id_ion['ions'][x]['ID1'] == data.main[0].ID1) {
   source = id_ion['ions'][x]['ID1'];
   target = id_ion['ions'][x]['ID2'];
} else {
   source = id_ion['ions'][x]['ID2'];
   target = id_ion['ions'][x]['ID1'];
}

这是非常基本的代码,因此您应该研究一些基本的在线工具来提高您的理解。codecademy教授基本的javascript,这将是一个很好的跳板。我将尝试用基本知识涵盖每一段代码

var_edges.push({data:{
   source: source,      
   target: target,
   exp: id_ion['ions'][x]['exp'],
   pub: id_ion['ions'][x]['pub'],
   name: id_ion['ions'][x]['name'],
   age: id_ion['ions'][x]['age']
}});
这是一个if/else块。在此条件中,我们将查看for循环当前正在计算的元素是否等于data.main[0].ID1。如果等于,我们将以一种方式设置源和目标,如果不是,则运行else并以另一种方式设置

    if(id_ion['ions'][x]['ID1'] == data.main[0].ID1) {
        source = id_ion['ions'][x]['ID1'];
        target = id_ion['ions'][x]['ID2'];
    } else {
        source = id_ion['ions'][x]['ID2'];
        target = id_ion['ions'][x]['ID1'];
    }

这将创建一个名为“data”的数组,您可以用为循环的每次迭代收集的数据填充该数组,并将其推送到另一个名为var_Edge的数组中。进行一些研究,四处询问一些有助于您学习的好书/教程。您很快就会开始理解javascript。

这是非常基本的代码,因此您应该我会研究一些基本的在线工具来提高你的理解力。codecademy教授基本的javascript,是一个很好的跳板。我会尝试用基础知识来涵盖每一段代码

var_edges.push({data:{
   source: source,      
   target: target,
   exp: id_ion['ions'][x]['exp'],
   pub: id_ion['ions'][x]['pub'],
   name: id_ion['ions'][x]['name'],
   age: id_ion['ions'][x]['age']
}});
这是一个if/else块。在此条件中,我们将查看for循环当前正在计算的元素是否等于data.main[0].ID1。如果等于,我们将以一种方式设置源和目标,如果不是,则运行else并以另一种方式设置

    if(id_ion['ions'][x]['ID1'] == data.main[0].ID1) {
        source = id_ion['ions'][x]['ID1'];
        target = id_ion['ions'][x]['ID2'];
    } else {
        source = id_ion['ions'][x]['ID2'];
        target = id_ion['ions'][x]['ID1'];
    }


这将创建一个名为“data”的数组,您可以用为循环的每次迭代收集的数据填充该数组,并将其推送到另一个名为var_Edge的数组中。进行一些研究,四处询问一些有助于您学习的好书/教程。您很快就会开始理解javascript。

有什么问题吗?您需要了解的是什么不理解?不要提出太宽泛的问题…我知道有一个数组,但我不理解其他变量及其函数的逻辑。请删除jquery标记。如果你不理解基本的javascript语法,你应该学习该语言的一般课程(或者读一本书,在线学习等)在期望处理现有代码之前,您还应该知道,在Javascript中,x['y']与x.y相同(假设y是一个单词,而不是不能成为变量的东西)。因此id_ion['ions'][x]['age]与id_ion.ions[x]相同.age问题是什么?你不明白的是什么?不要提出太宽泛的问题…我知道有一个数组,但我不能理解其他变量及其函数的逻辑。请删除jquery标记。如果你不理解基本的javascript语法,你应该学习该语言的一般课程(或者阅读一本书,在线学习等),然后再去处理现有的代码。另外,你应该知道在Javascript中x['y']和x.y是一样的(假设y是一个词,而不是不能成为变量的东西)。因此id_ion['ions'][x]['age]和id_ion.ions[x]是一样的.age非常感谢Zach L的回答和宝贵的时间。现在对我来说更清楚了。没问题。当你在学习时,你会感到困惑或卡住。搜索stackoverflow,一般来说,有人已经遇到了同样的问题,并得到了可以帮你找出错误的解决方案。快乐编码:)再次感谢你的建议。如果你觉得这回答了你的问题,请随意接受它作为正确的答案。谢谢你的回答和宝贵的时间。现在对我来说,这更清楚了。没问题。当你在学习时,你会感到困惑或卡住。搜索stackoverflow,一般来说,有人已经有了相同的我假设并得到了一个可以帮助您找出错误的解决方案。愉快的编码:)再次感谢您的建议。如果您觉得这回答了您的问题,请随意接受它作为正确答案谢谢@ahbon的回答和宝贵的时间。我现在越来越明白了非常感谢@ahbon的回答和宝贵的时间。现在我对它的理解越来越清楚了