考虑以下代码:
circle.each(function (d) {
//...code
});
我怎样才能打破循环?是否有一种自然的 D3 方式来打破 each 循环?我的意思是没有标志如下:
var flag = false;
circle.each(function (d) {
if (flag) return;
if (someCondition) flag = true;
//...code
});
我试过在 if 语句中返回 false 但它不起作用(认为这可能与 jquery.each
相同但我错了):
circle.each(function (d) {
if (someCondition) return false; //Not working
//...code
});
最佳答案
不,没有。查看每个源代码 https://github.com/mbostock/d3/blob/78e0a4bb81a6565bf61e3ef1b898ef8377478766/src/selection/each.js .
您也许可以抛出异常来打破循环,但除非您的情况真的“异常”,否则使用异常可能更令人困惑而不是有用。
关于javascript - 在没有标志的情况下打破 D3 每个循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32566989/