2

今日d3ソースコードを閲覧すると、次の行が表示されました。

return delay <= elapsed ? start(elapsed) : d3.timer(start, delay, time), 1;

私は何年もの間毎日javascriptをやっていて、それを見たことがありません。なに?

4

4 に答える 4

14

それはちょうど以下です。たぶん、コンマ演算子と組み合わせた三項演算子は、あなたを失望させているものですか?

これはこれと同等です:

if (delay < elapsed) start(elapsed);
else if (delay === elapsed) start(elapsed);
else {
  d3.timer(start, delay, time);
}
return 1;
于 2012-12-26T02:41:38.003 に答える
2

単に「以下」を意味します。

于 2012-12-26T02:41:40.830 に答える
1

これは、ほぼ(すべてではないしても)言語で左側のオペランドが右側のオペランド以下であるどうかを意味します

于 2012-12-26T02:44:23.473 に答える
0

<=は以下を意味します。

あなたが投稿した完全な行は、平易な英語で「遅延が経過よりも短い場合はstart(elapsed)を返し、そうでない場合はd3.timerの値を返します。

于 2012-12-26T02:42:54.487 に答える