今天浏览d3 source code,我看到了以下行:
return delay <= elapsed ? start(elapsed) : d3.timer(start, delay, time), 1;
我已经做了多年的javascript多年,以前从未见过。怎么了
最佳答案
它只是小于或等于。也许Ternary operator与comma operator结合在一起会使您失望吗?
这等效于:
if (delay < elapsed) start(elapsed);
else if (delay === elapsed) start(elapsed);
else {
d3.timer(start, delay, time);
}
return 1;