プロが教えるわが家の防犯対策術!

prototype.jsはJavaScriptのラッパといってもよいのでしょうか?
また、jQueryはJSのラッパなのでしょうか?

ラッパの概念がどうにも理解できず、困っています。教えてください。

A 回答 (1件)

最も有名な$()関数はdocument.getElementById()のラッパーとしての機能がありますが、


Prototypeはそれだけではありません。
jQueryは根本的な考え方が違いますので、ラッパーとは言えないと思います。

言語、特にJavaScriptのラッパーという言葉は、長い関数名を短くしたり、ホストアプリケーション(ブラウザなど)の互換性を吸収するような関数に使われます。
ですから、○○関数が××関数のラッパーという言い方はできますが、
PrototypeやjQueryというフレームワークやライブラリ名に対して、何かのラッパーと言う言い方はできないと思います。

ただし、日本語の文化的、慣例的な表現として、品名をあげてその品の代表となる部分さす場合があります。

「この車はいい音を出すね。」(車が音を出すのではなく、エンジン音がいい音である。)

このような表現においては、Prototypeはdocument.getElementById()のラッパーである、という言い方はできる事はできますが、
(Prototypeの代表は$()ですので、『$()はdocument.getElementById()のラッパーである』という意味)
誤解を生じやすい表現だと思うので、控えた方が良いと思います。

「この車はいい音を出すね。」
→ クラクションがいい音である。またはドアを閉める音がいい音である。もしくはカーオーディオの音が。ともすればウインカーの音が、、、


なお、「JavaScriptのラッパー」という表現は、(曲解すれば理解できなくはないですが)できません。
PrototypeもjQueryもJavaScriptです。


P.S.
ネタ的に、、、「日本のご飯の主食はご飯である。」
    • good
    • 0
この回答へのお礼

わかりやすい例えでの解説、ありがとうございました。
品名でその品の代表を表していたということなのですね。
疑問が氷解しました。
ありがとうございました。

お礼日時:2011/12/01 00:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!