JavaScriptユニバースパート2
8213 ワード
最後のポストの要約
シリーズの最初の部分で、我々は見ました.
記憶すべき点
プリミティブ値、オブジェクト&関数.
Bigintsとシンボル.
配列、日付、正規表現がオブジェクトの下に来る.
上記の型.
オブジェクト入門
配列、日付、正規表現、および他の非原始値はオブジェクトの下に来ます.
console.log(typeof({})); // "object"
console.log(typeof([])); // "object"
console.log(typeof(new Date())); // "object"
console.log(typeof(Math)); // "object"
オブジェクトが非原始的な値であることを知っています.つまり、既定のオブジェクトは変更可能です.オブジェクトを作成するには、{ }オブジェクトリテラルを使用する必要があります.
let newObj = {};
let anotherObj = {};
console.log(typeof(newObj),typeof(anotherObj)); // object object
上記のコードでは、newobjとanotherobjはオブジェクトです.上記2つの変数の図式表現は、下の図のようになります.
上記の図から、2つの変数のそれぞれが新しいオブジェクト値を持つと結論できます.
オブジェクトのプロパティ
オブジェクトは基本的にキー値ペアであるプロパティを含みます.
let objectWithProperty = {
propertyOne: "This is property one",
propertyTwo: "This is property two"
}
PropertyOneとPropertyTwoをキーと呼びます.“これはプロパティ1”と“これはプロパティ2”と呼ばれる値です.値は文字列型で値を持っていますが、値のフィールドに文字通りの値を格納することができます.オブジェクトのプロパティにアクセスするには、ドット()表記またはブラケット([])表記.
let objectWithProperties = {
propertyOne: "This is property one",
propertyTwo: "This is property two"
}
console.log(objectWithProperties.propertyOne); // "This is property one" using dot notation
console.log(objectWithProperties[propertyTwo]); // "This is property two" using bracket notation
上記のコードの概略図は、このようになります.プロパティに名前があります.単一のオブジェクトに同じ名前の2つのプロパティを持つことはできません.
例えば、オブジェクトにnameというプロパティがあるとしましょう.同じオブジェクトに同じプロパティ名' name 'を持つ別のプロパティを宣言できません.
それをしようとすると、JavaScriptは最後のキー値ペアを取り、同じ名前の前のキー値ペアを無視します.
let person = {
name: "Anne",
age: 32,
name: "Hathway"
}
console.log(person); // {age: 32, name: "Hathway"} 1st name property is neglected
console.log(person.name); // "Hathway" not "Anne"
上記のコードスニペットでは、最初のNameプロパティを無視し、最後のNameプロパティを取得します.プロパティ名は常にJavaScriptで大文字小文字を区別します.たとえば、名前と名前はJavaScriptの視点から2つの完全に異なるプロパティになります.
事前にプロパティ名を知らないのであれば、文字列の値としてコードを持っている場合は、[]ブラケット表記を使用してオブジェクトから読み込みます.
どのようなプロパティが不足していますか?
オブジェクト内で定義されていないプロパティにアクセスしようとすると、エラーをスローしないため、値として未定義の値が返されます.
例:
let person = {
name: "Anne Hathway"
};
console.log(person.age); // undefined
JavaScriptはオブジェクトを扱う際に特定の手順に従います.以下のようになります:let person = {
name: "Anne Hathway",
};
console.log(person.address.city); // ?
上記のコードスニペットの出力は何ですか?あなたが答えが誤りであると思うならば、あなたは正しいです.
でもどうやって?ドット演算子の左側がNULLまたは未定義の場合、エラーをスローします.
私はJavaScriptユニバースでオブジェクトについての十分な詳細を与えたことを願っています.
あなたがオブジェクトについてもっと知りたいならば、MDN docsを読んでください.
閉じるこの動画はお気に入りから削除されています.
私の次のポストですべてを参照してください.良い一日を!
Reference
この問題について(JavaScriptユニバースパート2), 我々は、より多くの情報をここで見つけました https://dev.to/aravindan07/introduction-to-javascript-universe-part-2-1o1hテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol