We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 13f26de commit ce88188Copy full SHA for ce88188
ja/jQuery/README.md
@@ -35,9 +35,26 @@ jQuery.fn = jQuery.prototype = {
35
$(document.body); // 返り値はjQueryのインスタンス
36
```
37
38
-
39
つまり、jQueryプラグインはJavaScriptのprototypeをそのまま利用しているだけに過ぎないということがわかります。
40
+## どういう用途に向いている?
41
+
42
+jQueryプラグインの仕組みがわかったのでどういう用途に有効な仕組みなのか考えてみましょう。
43
44
+単純なprototype拡張であると言えるので、利点はJavaScriptのprototypeと同様と言えるかもしれません。
45
+動的にメソッドを追加するだけではなく、既存の実装を上書きするmonkey patchのようなものもプラグインとして追加することができます。
46
47
+## どういう用途に向いていない?
48
49
+これもJavaScriptのprototypeと同様で、prototypeによる拡張は柔軟すぎるため、
50
+jQuery自体がプラグインのコントロールをすることが難しいです。
51
52
+また、プラグインが拡張するjQueryの実装に依存し易いため、
53
+jQueryのバージョンによって動かなくなるプラグインが発生しやすいです。
54
55
+jQueryではそこをどうやってカバーしているかというと、
56
+ドキュメント化されてないAPIは触っていけないというルールを設けているだけとなっています。
57
58
## 実装してみよう
59
60
`calculator`という拡張可能な計算機をjQuery Pluginと同じ方法で作ってみたいと思います。
0 commit comments