誰でもこれの違いを説明できますか:
更新 1 - フレーズを元に戻す
container.data("state", { test: 1 }); // works
この:
container.data["state"] = { test: 1 }; // doesn't work
最初の構築は機能するが、最後の構築は機能しないことがわかりました。呼び出しにより、コンテナに初期データが入力されます。つまり、呼び出されたときの「状態」は空白です。
誰でもこれの違いを説明できますか:
更新 1 - フレーズを元に戻す
container.data("state", { test: 1 }); // works
この:
container.data["state"] = { test: 1 }; // doesn't work
最初の構築は機能するが、最後の構築は機能しないことがわかりました。呼び出しにより、コンテナに初期データが入力されます。つまり、呼び出されたときの「状態」は空白です。
data
配列ではなく関数です。2 番目のスニペットで関数のインデックスにアクセスしようとしていますが、これは機能しません。
ドキュメントを参照してください: http://api.jquery.com/jQuery.data/
たとえば、ブラウザで開発コンソールを開き、次のように入力します。
$("a:eq(0)").data
配列ではなく、長い関数定義を取得します。
function (a,c){var d,e,g,h=null;if(typeof a=="undefined"){if(this.length){h=f.data(this[0]);if(this[0].nodeType===1&&!f._data(this[0],"parsedAt.... // continued