ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript で new 形式でオブジェクトを作成するプロセス

JavaScript で new 形式でオブジェクトを作成するプロセス

伊谢尔伦
伊谢尔伦オリジナル
2016-12-10 09:36:101562ブラウズ

JS の新しい操作は具体的に何をするのですか?段階的に見てみましょう。

たとえば、関数を定義して新しい操作を実行します:

function Foo(){}
var foo = new Foo();

脳の補足:
すべての関数はプロトタイプと呼ばれる属性を持ち、型は参照オブジェクトであるオブジェクトです。
すべてのオブジェクトには __proto__ という属性があります。type フィールドは object であり、これは参照オブジェクトでもあります。

まず第一に、JavaScript エンジンは新しい操作を実行すると、すぐにメモリのブロックを開き、空のオブジェクトを作成します (そして、これがこのオブジェクトを指すようにします)。

次に、コンストラクター関数 Foo() を実行して空のオブジェクトを構築します (コンストラクター内のすべての属性とメソッドが空のオブジェクトに 1 つずつインストールされるため、コンストラクターと呼ばれます)。

しかし、この空のオブジェクトには __proto__ という属性が追加されており、この __proto__ は Foo() のプロトタイプ オブジェクトを指しています。つまり、__proto__ = プロトタイプ;


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