0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

jQueryの変数に「$」をつける理由、ちゃんと説明できますか

0
Last updated at Posted at 2026-02-28

はじめに

jQueryを触り始めたとき、こんなコードを見たことがある人は多いと思います。

var $button = $('#submit');
var $items = $('.item');

「なんで変数名に $ がついてるの?」
「JavaScriptの文法なの?」
「つけないとダメ?」

今回はこの $ 文化について整理します。

そもそも$は何者なのか?

まず前提として、JavaScriptでは $ は普通に使える識別子です。

var $hoge = 123;

これはただの変数です。特別な意味はありません。

一方で、jQueryではこう書きます。

$('#id')
$('.class')

この $ は、実体としては jQuery 関数のエイリアスです。

jQuery('#id')

と同じ意味です。

つまり、

$() は「jQueryオブジェクトを生成する関数」

$hoge は「jQueryオブジェクトが入っている変数」という慣習

という整理になります。

なぜ変数名にも $ をつけるのか?

例えば次のコードを見てください。

var button = $('#submit');

この button が何なのか、パッと見でわかりますか?

DOM要素?
文字列?
jQueryオブジェクト?
配列?

これが

var $button = $('#submit');

と書いてあれば、

「あ、これはjQueryオブジェクトだな」

と一瞬でわかります。

つまり $ は「型ヒント」的な役割をしている

TypeScriptのように型が明示されないJavaScriptでは、
命名で意味を伝える文化が強いです。

$ はその一つで、

「この変数はjQueryオブジェクトですよ」

というサインなのです。

つけないとどうなる?

つけなくても動きます。

var button = $('#submit');
button.hide();

問題ありません。

しかし、こんなコードになると混乱します。

var button = document.getElementById('submit');
button.hide(); // エラー

DOM要素には hide() はありません。

このバグは、変数名に $ をつけていれば防げます。

var button = document.getElementById('submit');
var $button = $('#submit');

名前だけで役割が区別できる。

これは可読性の観点で非常に重要です。

実務でよくあるパターン

よく見る書き方:

var $form = $('#form');
var $inputs = $form.find('input');

このとき、

$form → jQueryオブジェクト

$inputs → jQueryオブジェクト

と一目でわかります。

逆に、

var formElement = document.getElementById('form');

のように生DOMを扱う場合は $ をつけないのが一般的です。

ES6以降でもこの文化は生きている?

jQuery自体の利用は減っていますが、
この「命名で型を表す文化」は今も重要です。

例えば:

isLoading → boolean

userList → 配列

$modal → jQueryオブジェクト

TypeScriptがあるとはいえ、
読みやすい命名は今も強い武器です。

チーム開発ではルールにするべき?

結論:

jQueryを使うなら統一したほうがいい。
理由はシンプルで、

  • 可読性が上がる
  • バグを減らせる
  • レビューが楽になる

からです。

逆に、プロジェクトでjQueryを使っていないなら $ 文化は不要です。

まとめ

jQueryの変数に $ をつけるのは、

文法でも強制でもありません。
これは「可読性を上げるための慣習」です。

特にJavaScriptのような動的言語では、命名がコードの品質を左右します。

昔のコードを見るときに「なんとなくついてる記号」だと思っていた $ も、ちゃんと理由がある。

そう理解しているだけで、コードの読み方が一段階深くなります。

0
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?