Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript缺少分号?_Javascript - Fatal编程技术网

Javascript缺少分号?

Javascript缺少分号?,javascript,Javascript,因此,我使用jsfiddle.net来测试我的javascript代码。我正在使用谷歌地图API,但这与我的问题无关。添加此函数后: function testCoord(points) { var result = false; for (var i = 0, var j = points.length - 1; i < points.length; j = i++) { if ((points[i].latLng.lat() > testCoor

因此,我使用jsfiddle.net来测试我的javascript代码。我正在使用谷歌地图API,但这与我的问题无关。添加此函数后:

function testCoord(points) {
    var result = false;

    for (var i = 0, var j = points.length - 1; i < points.length; j = i++) {
        if ((points[i].latLng.lat() > testCoord[0].latLng.lat()) != (points[j].latLng.lat() >
 testCoord[0].latLng.lat()) && (testCoord[0].latLng.lng() < (points[j].latLng.lng() -
 points[i].latLng.lng()) * (testCoord[0].latLng.lat() - points[i].latLng.lat()) /
 (points[j].latLng.lat() - points[i].latLng.lat()) + points[i].latLng.lng())) {
            result = true;
            break;
        }
    }
    return result;
}
函数测试坐标(点){
var结果=假;
对于(var i=0,var j=points.length-1;itestCoord[0].latLng.lat())!=(点[j].latLng.lat()>
testCoord[0].latLng.lat())和&(testCoord[0].latLng.lng()<(点[j].latLng.lng())-
点[i].latLng.lng())*(testCoord[0].latLng.lat()-点[i].latLng.lat())/
(点[j].latLng.lat()-点[i].latLng.lat())+点[i].latLng.lng()){
结果=真;
打破
}
}
返回结果;
}

当我使用JSHint工具时,它会告诉我for循环行中缺少一个分号,当我调用
break
时,它会说这是意外的。我真的不认为我漏掉了任何分号,但有些地方出了问题,因为不是地图不显示,即使我从未调用过这个函数。不允许我同时使用I和j声明for循环吗?在与这个问题斗争了几个小时后,我迷路了…

不要在这两个地方都使用
var

for (var i = 0, j = points.length - 1; i < points.length; j = i++)
for(变量i=0,j=points.length-1;i
使用
尝试您的代码(var i=0,j=points.length-1;…
。避免使用
var x=…,var y=…

var i=0,j=points.length-1;…
只需1
var
即可。@ChrisFarmer所以没有空格?去掉
j
之前的
标记。空格不重要。只要写更容易读的就行了。哈哈应该已经注意到了。我正忙着寻找更大的东西。或者根本不要在
中为
声明多个变量。这是可维护性地狱…@Ben这是一个演示,我可能会使用一次。没有其他用途,在我看来,这样翻译算法更容易,但很好。