JavaScriptの関数は、新しいオブジェクトをインスタンス化するために使用できるものを、コンストラクタを持つプロトタイププロパティを持つオブジェクト以外にはありません。JavaScriptの関数とオブジェクトと関数のないインスタンス化
しかし、次の操作を行うことはできません。私の意見では
let Pear = {
prototype : Object.prototype
};
let p = new Pear(); //Throws "caught TypeError: Pear is not a constructor"
が、これは全く同じようにする必要があります:どのような作品
function Pear() {
}
let p = new Pear();
。 私はちょうど違いがどこにあるのだろうかと思っています。私の最初の方法のための修正はありますか? "関数"は "実際の"オブジェクトではなく、扱い方が異なりますか?それは本当に単なる好奇心です。実際には何も重要ではありません...
私も理解したこと:JavaScriptには2種類のオブジェクトがあります。機能オブジェクトとオブジェクトオブジェクト。関数オブジェクトには、()で呼び出すことができる評価可能なコンテンツを含む特別なプロパティ(文字列)があります。通常のオブジェクトにはこのプロパティが含まれていません。 Object-ObjectをFunction-Objectに変換することは可能ではないようです。 – David