var nodesXY = ['15% 15%','30% 16%','19% 42%','39% 80%',];
var number = ["0","1","2","3","4","0","0","0"];
//some loop
AccesNodes(number[1]);
function AccesNodes(number){
console.log(number);
//number = number;
var firstNode = nodesXY[number];
console.log(nodesXY[number]);
console.log(firstNode);
number++;
var secondNode = nodesXY[number];
console.log(nodesXY[number]);
console.log(secondNode);
number = number + 4;
var secondNode = nodesXY[number];
console.log(nodesXY[number]);
console.log(secondNode);
}
我undefined
在登录时没有得到,firstNode
但是当我将数字计算到“下一个节点”中并尝试使var secondNode = nodesXY[number+1];
我得到未定义时,我没有得到。为什么不起作用?还有其他方法可以做到这一点吗?我已经搜遍了。
您的数组number
包含type的元素string
。即使JavaScript的类型不强,变量和元素仍包含某些特定类型的数据。
当您访问时number[X]
,它将因此返回一个字符串。为了使其正常工作,您必须创建一个数字数组:var number = [1,2,3,...]
或使用将该数组返回的字符串解析为一个数字parseInt(number[X])
。
有关JavaScriptvar
可以容纳的不同类型的列表,请参见MDN JavaScript文档中的此页面。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句