コアJavaScript(オブジェクト:基本)
オブジェクト
8種類のデータ型のうち7種類は「オリジナル型」と呼ばれる1つのデータしか含まれません.オブジェクト型はオリジナル型とは異なり、複数のデータを同時に含むことができます.
-key:value形式のproperty.
オブジェクトを作成します。
let user = new Object(); // 객체 생성자 문법
let user = {}; // 객체 리터럴 문법
1.文字と番組
let user = { //객체 리터럴 문법
name : 'John', // 왼쪽에는 키 key , 오른쪽에는 값 value
age : 30
}
user.name // John
user.key // 30
Property値を読み込むこともできますdelete user.age;
delete演算子を使用してPropertyを削除することもできます"like birds": true
複数の単語を組み合わせて名前を付ける場合は、引用符を使用する必要があります.let user = {
name: "john",
age: 30,
}
テールこれにより、Propertyの追加、削除、および移動が容易になります.
2.括弧表記法
いくつかの単語をpropertyキーに組み合わせる場合は、前述したようにします.ポイントシンボルを使用してProperty値を読み込めません
逆に、この角カッコ記号を使用できます.
let user = {};
user.["likes birds"] = true
let key = "name";
user[key]
変数keyユーザーが入力した値は変更される可能性があります.たとえば、値が変更される可能性があります.ポイント記号を使用して結果を確認することはできません.角カッコ記号を使用する必要があります.3.算出された価格
オブジェクトを作成するときに、オブジェクトテキストライブラリのPropertyキーがかっこで囲まれている場合は、計算されたProperty(computed property)と呼ばれます.
let fruit = prompt("어떤 과일을 구매하시겠습니까?", "apple");
let bag = {
[fruit]: 5,
};
[fruit]は、変数fruitからproperty名を取得することを意味します.let fruit = prompt("어떤 과일을 구매하시겠습니까?", "apple");
let bag = {};
bag[fruit] =5;
let fruit = 'apple';
let bag = {
[fruit + 'computers']: 5 // bag.applecomputer = 5
}
-かっこタグは、Propertyの名前と値の制限を排除するため、ポイントタグよりも優れていますが、作成が困難な点があります.-property名が決定された場合、ポイントマーキング法の使用中に複雑な状況が発生した場合、通常は角カッコマーキングで置き換えられます.
3.ショートカット割引
常に既存の変数からProperty値を取得および使用
function makeUser(name, age) {
return {
name: name;
age: age;
}
}
let user = makeUser("John", 30);
上記の例のプロパティの名前と値は変数の名前と同じです.Property値ショートカット(property value shorth)を使用できます.
let user = {
name,
age,
}
4.プロパティ名の制限
オブジェクトプロパティにこれらの制限はありません
let obj = {
for: 1
let: 2
return: 3
}
let obj = {
0: "test" // "0":"test"
}
5.演算子「in」を使用して、Propertyが存在するかどうかを確認
let user = {};
user.noSuchProperty === undefined ; // true
"key" in obj
in左側にはproperty名が必要です.property名は通常「包囲」文字列です.6. 'for...複文
オブジェクトのすべてのキーの前に(;)重複文とは全く違います!
for (key in object) {
//각 프로퍼티 키를 이용하여 본문을 실행
}
let user = {
name: "John",
age: 30,
isAdmin: true
}
for (let key in user) {
alert(key); //name, age, isAdmin
alert(user[key]); //John, 30, true
}
変数let keyを繰り返します!7.対象ソート方式
オブジェクトの整数値は自動的にソートされ、オブジェクトに追加された順序でソートされます.
整数プロパティ:変形せずに整数内を移動できる文字列
let codes = {
"49": "독일":
"41": "스위스":
"44": "영국":
};
順番に出力する場合は、数値の前に+を付ける必要があります.課題
let user = {
name = John,
surname = Smith,
}
user.name. = Pete
delete user.name
function isEmpty(obj) {
for (let key in obj) {
return false;
}
return true;
}
const user = {
name = "John"
}
user.name = "Pete"
へんかlet salaries = {
John: 100,
Ann: 160,
Pete: 130,
}
function sum(obj) {
let sum = 0
for (key in salaries) {
sum += key[salaries]
}
return sum
}
let menu = {
width: 200,
heigth: 300,
title: "My menu",
};
multyplyNumeric(menu);
menu = {
width: 400,
height: 600,
title: "My menu"
};
function multypyNumeric(obj) {
for (key in obj) {
if (typoeof obj[key] == 'number') {
obj[key] *= 2;
}
}
}
typeof:Property値が数値かどうかを決定できますReference
この問題について(コアJavaScript(オブジェクト:基本)), 我々は、より多くの情報をここで見つけました https://velog.io/@tastestar/코어-자바스크립트-객체기본テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol