2016-11-01 4 views
-7

私はjqueryのようなライブラリを作って、これがどこから来ているのか分かりません。彼らがこれを返すとき、彼らはこれだけではなく、これを返します。これは何ですか?

function _(a) { 
    var b = { 
    key: "some val" 
    }; 
    if (a) { 
    if (window === this) { 
     return new _(a) 
    } 
    this.e = document.getElementById(a); 
    return this 
    } else { 
    return b 
    } 
} 
_.prototype = { 
    hide: function() { 
     this.e.style.display = "none"; 
     return this 
    } 

HTML

<button onclick="_('abc')">click</button> 
<div id="abc" style="width: 200px; height: 100px; background-color: pink;"> </div> 
+3

'this.e'は' this.e = document.getElementById(a); 'に由来します。それがあなたの質問に答えることができないなら、私はあなたが何があなたを混乱させているかについて少し詳細を述べる必要があると思います。なぜあなたは 'this.e = X'について混乱しますが、' _.prototype = Y'については混乱しませんか? – Paulpro

+0

参照:http://stackoverflow.com/questions/13418669/javascript-do-i-need-to-put-this-var-for-every-variable-in-an-object –

+3

これについて混乱している場合は、私はjquery_のようなライブラリを書くことはあなたにとって良いアイデアだとは思っていません。 – TheValyreanGroup

答えて

-3

これは、パラメータがイベントのとき、関数のパラメータ名としてEを使用するだけの大会です。ここの例のようにイベントはonclickです

+1

OPの例では、 'e'はイベントではなく要素であるようです。 – Phil

+0

これは意味をなさない! 'e'は関数のパラメータとして決して使用されず、' e'はイベントではありません! – Li357

関連する問題