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']
}});
您好,我是初学者,我正在努力理解编码。我到处寻找,我完全无法理解这段代码。
答案 0 :(得分:3)
这是非常基本的代码,所以你应该研究一些基本的在线工具来增强你的理解力。 codecademy教授基本的javascript,并且是一个很好的弹簧板。我将尝试用基础知识覆盖每一段代码。
for(var x = 0; x < id_ion['ions'].length; x++) {
这是for循环。它将迭代遍历数组id_ion [&#39; ions&#39;]的每个元素,以便您可以逐个评估它们。每次for循环经历一次迭代时,x递增。所以我们第一次看id_ion [&#39;离子&#39;] [0]这是第一个元素,接下来我们看看id_ion [&#39;离子&#39;] [1]等等。 / p>
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 / else块。在这个条件中,我们看到for循环当前正在评估的元素是否等于data.main [0] .ID1。如果是,我们设置源和目标的一种方式,如果没有,我们运行else并以另一种方式设置它们。
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']
}});
这会创建一个名为&#39; data&#39;您填充了为循环的每次迭代收集的数据,并将其推送到另一个名为var_edges的数组中。做一些研究并询问一些可以帮助你学习的好书/教程。您将立即开始理解javascript。
答案 1 :(得分:0)
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'];
}
用于将表元素放入带有if语句的变量中。
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']
}});
由于push
function。,用于创建其他数组