8

JQuery ではvar $a=$()、関数を宣言するようなものとして変数を定義することがあります。だから私は知りたいのですが、変数をvar a唯一のものとして定義した場合、それは何か変更を加えますか?

4

5 に答える 5

4

つまり:

var a = $(/* Object or Selector gets passed here */)

その場合、唯一の違いは名前です。開発者は$a、値がすでにjQuery-ied であることを示すために使用します。オフのままにしても機能は変わりませんが、将来の開発者にとっては不利益になるでしょう。

于 2012-10-03T20:22:44.867 に答える
2

一般的に、$記号を前に付けたjQueryオブジェクトに名前を付けることを好みます。これは、コード内のjQueryオブジェクトを認識するための規則です。

しかし、それは単なる別の変数名です;;

var a = 2;
var $a = $('#something');
于 2012-10-03T20:24:59.563 に答える
2

基本的に、これはJavaScriptのCrockfordのコーディング規約の違反として許可されています。これは、jQueryオブジェクトをjavascriptDOM要素と区別するために使用されます。

例えば

var a = document.getElementById('a'); // DOM element
var $a = $(a); // jQuery object for the DOM element with ID 'a'
于 2012-10-03T20:26:40.153 に答える
2

いいえ、違いはありません。その文脈$aと同じです。a単なる変数名です。

于 2012-10-03T20:22:36.323 に答える
1

$はJS識別子で許可されている文字であり、違いはありません。$(obj)は、オブジェクトobjをjQueryオブジェクトでラップし、objを多くの追加の動作で装飾します。

これらは有効なJavascript変数名です。

$a=1;
a$$$=1;
$a=1;

次のような場合、関数$はjQueryのエイリアスです。

あなたのHTML:

<img src='logo.png' id='site_logo'/>

あなたのJS:

var logo = $('#site_logo');
logo.fadeOut();

メソッドfadeOutはimg要素に属していませんが、jQueryラッパーに属しています。

于 2012-10-03T20:26:57.483 に答える