I have seen the following two variable initializations to create an empty jQuery object. Is there a major difference or advantage to use one over the other?
var a = $({});
var b = $();
I have seen the following two variable initializations to create an empty jQuery object. Is there a major difference or advantage to use one over the other?
var a = $({});
var b = $();
あなたが意味するなら、それは呼び出しが実際に同等$([])
であった昔からのものです(これは文書化されていない機能でした)。したがって、空のセットを取得するには、 を呼び出す必要があります。これはjQuery 1.4 で変更されました。の文書化された機能は、空のセットを返すようになりました。$()
$(document)
$([])
$()
オブジェクトを jQuery コンストラクターに渡すことは、まったく別の獣です。 $({})
空の jQuery オブジェクトを作成しません。長さ 1 の jQuery オブジェクトを作成します。選択されたアイテムはオブジェクトそのものです。
JS オブジェクトを jQuery コンストラクターに渡すと、jQuery のより難解な機能、つまり (非 DOM) オブジェクトでのイベントのバインドとトリガーを利用できます。
例えば:
var obj = { some: 'stuff' };
$(obj).on('someevent', function() { ... });
$(obj).trigger('someevent');
いずれにせよ、目的が新しい空の jQuery オブジェクトをインスタンス化することである場合は、$()
.
私はあなたが意味すると思います:
var a = $([]); //<- array not object
var b = $();
私が知っている利点はありません。最初のものは古いバージョンです。1.4 以降を使用できます。