JJJ*_*jim 9 javascript continue labeled-statements
我正在使用此代码来解决某些圈子重叠的问题:
iCantThinkOfAGoodLabelName:
x = genX(radius);
y = genY(radius);
for(i in circles) {
var thisCircle = circles[i];
if(Math.abs(x-thisCircle["x"])+Math.abs(y-thisCircle["y"])>radius*2) { //No overlap
continue;
} else { //Overlap
continue iCantThinkOfAGoodLabelName; //<- Line 256
}
thisCircle = [];
}
Run Code Online (Sandbox Code Playgroud)
但是当达到continue语句时,chrome的开发者控制台给了我: client.html:256 Uncaught SyntaxError: Undefined label 'iCantThinkOfAGoodLabelName'
Bra*_*ace 10
标签应该在循环之前立即出现
x = genX(radius);
y = genY(radius);
iCantThinkOfAGoodLabelName:
for(i in circles) {
Run Code Online (Sandbox Code Playgroud)
因为iCantThinkOfAGoodLabelName:在循环之前需要正确.
iCantThinkOfAGoodLabelName:
for (blah; blah; blah)
..
Run Code Online (Sandbox Code Playgroud)
我想你想要的是一个功能..
function iCantThinkOfAGoodFunctionName() {
var x = genX(radius),
y = genY(radius);
for (i in circles) {
var thisCircle = circles[i];
if(Math.abs(x-thisCircle["x"])+Math.abs(y-thisCircle["y"])>radius*2) { //No overlap
continue;
} else { //Overlap
iCantThinkOfAGoodFunctionName();
}
thisCircle = [];
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7031 次 |
| 最近记录: |