blog.toxn

あしあと

javascriptオブジェクトのこと

よく分かってなかったけど最近覚えたこと。

javascriptで扱うオブジェクトの最上位にあるのが「window」オブジェクト。

window.open("http://www.google.co.jp/", "Open sesame.");

とかやって使うオブジェクト。開いているwindow自体を指している。

windowオブジェクトは、「name」、「document」、「history」ナドのメンバをもっている。一番使われるのは「document」でしょう。

var contentsOfBodyTag = window.document.body;

documentっていわゆる「DOM(Document Object Model)」。HTMLタグとして記述されたドキュメントの最上位にあたる。だからプロパティがとても多い。

windowがあって、その中に描画される(HTMLで書かれた)documentがあって、(HTML)documentの中には、headやbodyやtitle、imagesなんかがある。 メンバにアクセスする(階層を掘り下げていく)には、2つの方法があって「ドット記法(dot notation)」と、「括弧記法(bracket notation)」のどちらを使っても良い。 あと、windowは省略してもよい。

// タイトルが取れる
var title1 = window.document.title;
// ↓も同じ
var title2 = window[document][title];
// これも同じですね
var title3 = document.title;

参考

https://developer.mozilla.org/ja/docs/Web/API/Window