JavaScript代码在“for”循环后中断(JavaScript code breaks after “for” loop)
我写了一个简单的地理定位代码,出于某种原因,它会中断...请参考下面引用的代码部分中的注释,它们显示了一切都很好,从哪一点开始。
var city = "Unknown"; var area = "Unknown"; var lr = w.results.length; for (var n = 0; n <= lr; n++) { var la = w.results[n].address_components.length; for (var m = 0; m <= la; m++) { if (w.results[n].address_components[m].types[0] == "locality") { city = w.results[n].address_components[m].long_name; break; } else if (w.results[n].address_components[m].types[0] == "administrative_area_level_2") { area = w.results[n].address_components[m].long_name; break; } } //Whatever I put here, still works } //Now it breaks, and everything below never runs if (city == "Unknown") { city = area; }我在Tasker(Android)中运行它,没有任何错误可以给出提示。 但是,必须是一个愚蠢的错误。 提前致谢!
I wrote a simple geolocation code, that, for some reason, breaks... Please refer to comments in the part of code quoted below, which show where everything is fine and from which point it breaks.
var city = "Unknown"; var area = "Unknown"; var lr = w.results.length; for (var n = 0; n <= lr; n++) { var la = w.results[n].address_components.length; for (var m = 0; m <= la; m++) { if (w.results[n].address_components[m].types[0] == "locality") { city = w.results[n].address_components[m].long_name; break; } else if (w.results[n].address_components[m].types[0] == "administrative_area_level_2") { area = w.results[n].address_components[m].long_name; break; } } //Whatever I put here, still works } //Now it breaks, and everything below never runs if (city == "Unknown") { city = area; }I'm running it in Tasker (Android) and got no errors that could give a hint. Must be a dumb mistake, though. Thanks in advance!
最满意答案
你永远不会离开for循环,这就是为什么它不起作用。
你可以在if(condition) { break; } 低于第二个for循环。 只需找到什么条件。
You never leave the for loop, that's why it doesn't work.
You could use below an if(condition) { break; } below the second for loop. Just find what to use as condition.
更多推荐
发布评论