JavaScript のオブジェクトの概要

黄舟
黄舟オリジナル
2017-08-13 10:35:011450ブラウズ

フロントエンド開発者は、DOM と BOM オブジェクトについてすでによく理解していると思います。これら 2 つのオブジェクトは、入門的な概念であるだけでなく、日常の開発において最もよく知られる概念の 1 つでもあります。フロントエンド開発の知識は高い柔軟性を持っていますが、多くの学生は、遭遇するものはすべて学習するという概念を堅持し、常に少しずつ知識を向上させます。私は個人的には、全体を把握し、日々の積み重ねを改善の手段として使用することを好みます。

要するに、自分に合った方法が一番良いということです。本題に入ります:

1. グローバル オブジェクト

グローバル オブジェクト: グローバル オブジェクトが 1 つだけ存在する場合、ホスト環境では、それ自体とそのすべてのプロパティにいつでもアクセスできます。

  • ルート ノード オブジェクト: すべての属性とメソッドはルート ノード オブジェクトの下にマウントされるため、開発者は属性とメソッドを検索しやすくなります

  • グローバル オブジェクト: さまざまな属性とメソッドが複数のノード オブジェクトの下にマウントされます。利点は、呼び出しが便利で高速であることです。欠点は、Java 言語によって批判されており、どこで見つけられるかわからないことです。使用時;

2. Javascript のグローバル オブジェクト

DOM オブジェクト 現在のスター NodeJS には固有のグローバル オブジェクトがあり、他のすべてのプロパティとメソッドはこのノード オブジェクトまたはそのサブノード オブジェクトに従属します。 DOM の html、BOM の window、NodeJS の global html、BOM的window、NodeJS的global
Javascript为了开发者使用的方便,将诸多方法、属性都设置为全局对象/属性,所以Javascript就没有所谓的唯一的根节点对象;
Javascript的全局对象根据是否依赖宿主环境分为两类:
- 核心对象:即ECMAScript Global Object,这些对象在程序执行前已经存在了(默认实例化);
- 宿主环境下的对象:宿主环境提供的全局对象/函数,常见的是浏览器设定并且限制开发者重写的,如:setTimeout、location等,

2.1. Javascript的核心全局对象:

序号 类别 栗子
1 值属性 NaN、Infinity、Undefined...
2 函数属性 eval()、parseInt()、isNaN()、decodeURI()....
3 构造器(类)属性 Object、Array、Function、String、Boolean、Number、Date、RegExp、Error、RangeError、SyntaxError...
4 其他(类似JAVA中静态类) Math、JSON...

2.2. 全局对象的读写性:

不管是Javascript的核心全局对象,还是宿主环境扩充的全局对象;开发者都可以随时调用;其不同之处在于:
1. ECMAScript中定义的核心全局对象是可重写,但不可枚举,即:Writeable=true,Enumerable=false開発者の便宜を図るため、JavaScript は多くのメソッドとプロパティをグローバル オブジェクト/プロパティとして設定します。 Javascript のルート ノード オブジェクトには、いわゆる固有のものはありません。
Javascript のグローバル オブジェクトは、ホスト環境に依存するかどうかに応じて、次の 2 つのカテゴリに分類されます。

- コア オブジェクト: ECMAScript グローバル オブジェクト。これらのオブジェクトは、プログラムが実行される前にすでに存在します。実行 (デフォルトでインスタンス化); 🎜- ホスト環境オブジェクト: setTimeout、場所など、一般にブラウザーによって設定され、開発者によって書き換えが制限されます。 Javascript のコア グローバル オブジェクト: シリアル番号 カテゴリ チェストナット 1 値属性 NaN、無限大、未定義... 2 関数属性 eval()、parseInt()、isNaN()、decodeURI().. .. 3 コンストラクター (クラス) 属性 オブジェクト、配列、関数、文字列、ブール値、Number、Date、RegExp、Error、RangeError、SyntaxError... 4 その他 (JAVA の静的クラスに似ています) ) 数学、JSON ..

2.2. グローバル オブジェクトの読み取り可能性と書き込み可能性:

🎜 JavaScript のコア グローバル オブジェクト、またはホスト環境によって展開されたグローバル オブジェクト。開発者はいつでも呼び出すことができます。違いは次のとおりです。 🎜1. ECMAScript で定義されたコア グローバル オブジェクト、つまり、 >Writeable=true,Enumerable=false 🎜2. ホスト環境 (主にブラウザ) によって設定されたグローバル オブジェクトは、通常、書き換えることができません🎜

以上がJavaScript のオブジェクトの概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。