ホームページ > 記事 > CMS チュートリアル > 再定式化されたタイトルは次のとおりです: Object() の概念
組み込みの Object() コンストラクターを使用すると、汎用の空のオブジェクトを動的に作成できます。実際、第 1 章の冒頭を覚えていると、これはまさに cody オブジェクトを作成して行ったことです。 cody オブジェクトを再作成しましょう。
例:sample69.html
リーリーここでは、Object()
コンストラクターを使用して、cody という汎用オブジェクトを作成するだけです。 Object()
コンストラクターは、事前定義されたプロパティやメソッドを持たない空のオブジェクトを作成するための型にはまったツールと考えることができます (もちろん、プロトタイプ チェーンから継承されたオブジェクトは除きます)。
明確でない場合は、 Object()
コンストラクター自体はオブジェクトです。つまり、コンストラクターは、Function
コンストラクターから作成されたオブジェクトに基づいています。これは混乱を招く可能性があります。 Array
コンストラクターと同様、Object
コンストラクターは空のオブジェクトを吐き出すだけであることに注意してください。はい、好きな空のオブジェクトをすべて作成できます。ただし、cody のような空のオブジェクトを作成することは、事前定義されたプロパティを使用して独自のコンストラクターを作成することとは大きく異なります。 cody は Object()
コンストラクターに基づく単なる空のオブジェクトであることを必ず理解してください。 JavaScript の力を真に活用するには、Object()
から空のオブジェクト コンテナーを作成する方法を学ぶだけでなく、独自のオブジェクト「クラス」(##) を構築する方法も学ぶ必要があります。 #Person()) 、
Object() コンストラクター自体など。
パラメータ
Object() コンストラクターはオプションのパラメーターを受け取ります。このパラメータは、作成する値です。パラメータを指定しない場合は、
null または
unknown 値が想定されます。
リーリー
null または unknown
以外の値が Object
コンストラクターに渡された場合、渡された値はオブジェクトとして作成されます。したがって、理論的には、Object()
コンストラクターを使用して、コンストラクターを持つ他のネイティブ オブジェクトを作成できます。次の例では、まさにそれを実行します。
例:sample71.html
オブジェクトには次のプロパティがあります (継承されたプロパティとメソッドを除く)。
プロパティ (
Object.prototype;
######プロトタイプ######
インスタンスのプロパティとメソッド
var myObject = {};
):
######コンストラクタ######
インスタンス メソッド (var myObject = {};
myObject.toString();
):
hasOwnProperty()
isPrototypeOf()
propertyIsEnumerable()
toLocaleString()
toString()
valueOf()
プロトタイプ チェーンは
Object.prototype のすべてのプロパティとメソッドはすべての JavaScript オブジェクトによって継承されます。
Object()
オブジェクト var cody = {};) を使用して、プロパティの有無にかかわらずオブジェクトをインスタンス化する必要があります。第 1 章の冒頭で、1 回限りの cody オブジェクトを作成し、ドット表記を使用してその cody オブジェクトにプロパティを割り当てたときのことを覚えていますか?もう一度やりましょう。
例:sample72.html
リーリー
cody
オブジェクトを 1 つのステートメントで表現できます。 例:sample73.html
リーリー
リテラル表現を使用すると、少ないコードでオブジェクト (定義されたプロパティを含む) を作成し、関連データを視覚的にカプセル化できます。単一のステートメント内で
演算子と
, 演算子が使用されていることに注意してください。そのシンプルさと読みやすさにより、これは実際に JavaScript でオブジェクトを作成する場合に推奨される構文です。
プロパティ名は文字列としても指定できることを知っておく必要があります。
例:sample74.html
プロパティ名が次の場合を除き、プロパティを文字列として指定する必要はありません。
は予約キーワード (
class) の 1 つです。
は数字で始まります。
###注意深い!オブジェクトの最後のプロパティの末尾にカンマを付けることはできません。これにより、一部の JavaScript 環境でエラーが発生する可能性があります。
から継承します
在以下示例中,我使用 foo
属性扩充 Object.prototype
,然后创建一个字符串并尝试访问 foo
属性,就好像它是字符串实例的属性一样。由于 myString
实例没有 foo
属性,因此原型链启动并在 String.prototype
中查找值。它不在那里,所以下一个要查找的位置是 Object.prototype
,这是 JavaScript 查找对象值的最终位置。找到了 foo
值,因为我添加了它,因此它返回 foo
的值。
示例:sample75.html
<!DOCTYPE html><html lang="en"><body><script> Object.prototype.foo = 'foo'; var myString = 'bar'; // Logs 'foo', being found at Object.prototype.foo via the prototype chain. console.log(myString.foo); </script> </body>
小心!添加到 Object.prototype
的任何内容都将显示在 for in
循环和原型链中。因此,据说禁止更改 Object.prototype
。
以上が再定式化されたタイトルは次のとおりです: Object() の概念の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。