d3 の再利用可能なチャートに関するこのチュートリアルを読んでいます。最初の「構成」セクションで、著者はチャート関数を作成する 2 つの方法について説明しています。
// Method 1
function chart(config) {
// generate chart here, using `config.width` and `config.height`
}
// Method 2
function chart(config) {
return function() {
// generate chart here, using `config.width` and `config.height`
};
}
彼は最初の方法よりも 2 番目の方法を提案しています。
ただし、呼び出し元は、チャート関数 (選択するチャートのタイプが複数ある場合) と構成オブジェクトの両方を管理する必要があります。チャート構成をチャート関数にバインドするには、クロージャーが必要です。
しかし、この説明はわかりません。最初の方法に対する方法 2 の利点は何ですか?