js のウィンドウ オブジェクトとドキュメント オブジェクトの違いを理解しようとしています。オンラインで調べましたが、まだ明確な理解がありません。私が知っていることから:ウィンドウはスーパードキュメントのようなもので、ドキュメントオブジェクトが含まれています。では、firefox を使用して localhost/test.js という 1 つのページを開く場合、browser:firefox がウィンドウ オブジェクトで、ファイル test.js がドキュメント オブジェクトであると言えますか?
4 に答える
windowオブジェクトは、現在のブラウジング コンテキストを表します。window.location、window.history、window.screen、window.status、または のようなものを保持しwindow.documentます。また、フレーミング セットアップに関する情報( 、frames、parent、topプロパティself)があり、 、 、 、 、 などの重要なインターフェイスをapplicationCache保持XMLHttpRequestしsetTimeoutてescapeいconsoleますlocalStorage。最後になりましたが、これは JavaScript のグローバル スコープとして機能します。つまり、すべてのグローバル変数はそのプロパティです。
対照的に、 ( window.)documentオブジェクトは、現在読み込まれている DOM を表しますwindow。これはその一部にすぎません。ドキュメントは、documentElement(通常は<html>)、formsコレクション、cookie文字列、そのlocation、またはそのなどの情報を保持しreadyStateます。また、や などのメソッドを使用して、別のインターフェイス (複数Documentのが存在する場合があります。たとえば、ajax 経由で取得された XML ドキュメント)も実装します。getElementByIdaddEventListener
非常に詳細な説明:こちらをお読みください
基本的に window はブラウザのウィンドウであり、 document はその中の HTML ページです。

ブラウザーで実行される JavaScript には、最上位として Window があります。これは、グローバル変数がウィンドウのプロパティになることを意味します:
// this code is not inside a function
var global1=22;
function test(){
var local=88;
window.global2=99;
console.log(local);//logs 88 because
// local is available within the body
// of this function
console.log(global1);//logs 22
}
console.log(typeof local);//logs undefined becaue were
// outside the funciton body
test();
console.log(global2);//logs 99 because we added
// global2 as a property of window
したがって、window にはすべてのグローバル オブジェクトが含まれます。つまり、parseInt は window.parseInt と同じことを行います。
ウィンドウ自体も含まれているため、次のようになります。
window===window.window.window;//is true
ウィンドウは Html 要素ではなく、ドキュメントであるため、ウィンドウには getElementById、children、childNodes ... 関数がありません。
JavaScript アプリケーションには、値が定義されるスコープであるコンテキストがあります。ブラウザの場合の「ルート」または「グローバル」オブジェクトはwindow.
windowオブジェクトにはdocument、ドキュメントの表現を格納するというプロパティ (変数) があります。ドキュメントは、現在読み込まれているドキュメントのモデル表現 ( 、 など) を保持しtitleますanchors。オブジェクトはwindow、ドキュメントが表示されるブラウザ ウィンドウを表します。
また、関数にないスクリプトを使用する場合は、次のように定義します。
var x = 10;
実際に行ったことは、グローバル オブジェクトで変数を定義することです。ブラウザの場合、これはwindow.
したがってwindow.x、値は 10 になります。