オプション 1:
を使用し$.fn.splice
ます。そこにあり、常に存在しますが、文書化されておらず (したがって、将来存在しない可能性があります)、判読不能であり、引数がないことを必要とします。
オプション 2:
$.fn.noop = function(){return this}
. 信頼性が高く、読みやすく、予測可能で、高速です。#1を好む唯一の理由は、開発時間です。
オプション 3 (推奨): 条件付きのプラグインを使用します。これは、Ben Alman によるIff プラグイン(または独自のプラグインを作成)など、連鎖可能な no-op を望む唯一の理由です。
長所:ターン
... [condition?'method':'noop']() ...
の中へ:
... .iff(condition).method().end() ...
つまり、#2 よりも読みやすく、呼び出しが 1 つに制限されていません。iff
スタックを適切にアンワインドする限り、条件内をトラバースしたりネストしたりすることもできます。
短所: これはプラグインであり、取得する必要があります。空のコレクションを操作するときは、呼び出すメソッドがノーオペレーションである必要があります。すべての標準 jQuery 関数 (を除くadd
) は.