矩阵,距离,javascript

问题描述:

function getDistance(lat1, lat2, lon1, lon2){ 
    var R = 6371; //KM 
    var d = Math.acos(Math.sin(lat1) * Math.sin(lat2) + 
      Math.cos(lat1) * Math.cos(lat2) * Math.cos(lon2 - lon1)) * R 
     return d  
}; 


var items = [[1,2],[3,4],[5,6]]; 
alert(items[0][0]); // 1​​ 


document.write(getDistance(items[0][0],items[1][1],items[1][2],items[2][2])); 
document.write(getDistance(45,35,41,35)); 

为什么我不能在函数getDistance中调用我的数组元素(项目)?矩阵,距离,javascript

+0

由于您是Stackoverflow的新手,您应该知道,如果该问题对您有帮助,您应该单击绿色复选标记来接受答案。 – 0x499602D2 2012-08-12 12:53:01

没有数组元素的内部维有密钥[2]。你的3个子阵列都只有两个元素,所以它们的可用密钥只有[0],[1]

您因此不能访问像items[1][2]items[2][2]不存在的元素时,这些子阵列的最后键分别是items[1][1]items[2][1]

你测试过items[0][0],但看到当您尝试items[2][2]

var items = [[1,2],[3,4],[5,6]]; 
console.log(items[0][0]); // 1​​ 
console.log(items[2][2]); // undefined 

getDistance(, ... items[1][2], items[2][2]); 

没有第三个元素的数组item[1]items[2]中会发生什么。