次のように書き換えてみましょう。 // function jQuery (selector, context) { return new init(selector, context, rootjQuery); } jQuery.prototype = jQuery.fn; // function init (selector, context, rootjQuery) { /* ...... this.length = 0; ...... */ } init.prototype = jQuery.fn; jQuery.fn.init = init; 本質的にはこういうことです(私が書くなら、こんな感じにすると思います)。したがって、new jQuery と new init は、どちらも jQuery.fn をプロトタイプとする新規オブジェクトを生成します。 --- さて、No.1 には
![jQueryのvar jQueryの仕組みについて](https://cdn-ak-scissors.b.st-hatena.com/image/square/9cf0509ee768170b373aca3655768f065e317ca6/height=288;version=1;width=512/https%3A%2F%2Foshiete.xgoo.jp%2Fimages%2Fsp%2Fqa_recommend%2F2101_1.jpg)