オブジェクト
12971 ワード
オブジェクトバー JavaScriptは、オブジェクトベースのプログラミング言語 であるオブジェクト ほとんどがJavaScriptを構成する「すべて」元のタイプは1つの値のみを表し、オブジェクトタイプは複合データ構造 であり、異なるタイプの値を1つのユニットに構成する.オブジェクトセット 、0以上のプロパティを含むパーセント鍵と値からなる JavaScriptで使用可能なすべての値は、property値 です.関数はproperty=>メソッドとしても使用できます.
Property:オブジェクトの状態を表す値(データ) メソッド:プロパティ(ステータスデータ)を参照および操作する動作 オブジェクトは、オブジェクトの状態を表す値と、参照や操作が可能な動作(メソッド)を同時に含むことができるので、状態と動作を1つのユニットに構造化することが非常に有用である
JavaScriptは、クラスベースのオブジェクト向け言語とは異なり、複数のオブジェクト作成方法をサポートするプロトタイプベースのオブジェクト向け言語です.オブジェクト文字 オブジェクトジェネレータ関数 ジェネレータ関数 Object.createメソッド クラス(ES 6) オブジェクトテキストからオブジェクトを作成するには
JavaScriptでオブジェクトを作成する最も一般的で最も簡単な方法は、オブジェクト文字を使用することです.
オブジェクト文字はJavaScriptを表す柔軟で強力なオブジェクト生成方式である.まずクラスを定義してオブジェクトを作成し、new演算子を使用してジェネレータを呼び出す必要はありません.
例
既存のpropertyキーを繰り返し宣言すると、後で宣言されるpropertyは宣言されたpropertyを上書きします.
property値が関数である場合、通常の関数を区別するためのメソッドと呼ばれます.
特許アクセスポイントPropertyアクセス演算子(.)使用する句点表記法 角括弧プロパティアクセス演算子([...])使用するかっこ記号 角括弧プロパティアクセス演算子に指定するプロパティキーは、引用符で囲まれた文字列 でなければなりません.
Property動的作成
存在しないプロジェクトに値を割り当てると、プロジェクト値が動的に作成、追加、割り当てられます.
delete演算子を使用してプロファイルを削除する
Propertyサムネイル表示
ES 6では、変数をproperty値として使用する場合、変数名がpropertyキーと同じ名前である場合、propertyキーを省略することができる.
ES 6では、オブジェクトテキスト内部で計算されたコンフィギュレーション名を使用してコンフィギュレーションキーを動的に生成することもできます.
JavaScriptは、クラスベースのオブジェクト向け言語とは異なり、複数のオブジェクト作成方法をサポートするプロトタイプベースのオブジェクト向け言語です.
JavaScriptでオブジェクトを作成する最も一般的で最も簡単な方法は、オブジェクト文字を使用することです.
オブジェクト文字はJavaScriptを表す柔軟で強力なオブジェクト生成方式である.まずクラスを定義してオブジェクトを作成し、new演算子を使用してジェネレータを呼び出す必要はありません.
例
let person = {
name: 'Lee',
sayHello: function() {
console.log(`Hello! My name is ${this.name}.`);
}
};
console.log(typeof person); // object
console.log(person); //{name: "Lee", sayHello: f}
文字列または文字列で計算できる式を使用してpropertyキーを動的に生成することもできます.この場合、式をpropertyキーとして使用します([...])ロープで縛らなければならない.let obj = {};
let key = 'hello';
// ES5: 프로퍼티 키 동적 생성
obj[key] = 'world';
// ES6: 계산된 프로퍼티 이름
// let obj = { [key]: 'world' };
console.log(obj); // {hello: "wold"}
var、functionなどの保留語をpropertyキーとして使用してもエラーはありません.しかし、予期せぬエラーは推奨されません.既存のpropertyキーを繰り返し宣言すると、後で宣言されるpropertyは宣言されたpropertyを上書きします.
let foo = {
name: 'Lee',
name: 'Kim'
};
console.log(foo); //{name: "Kim"}
方法property値が関数である場合、通常の関数を区別するためのメソッドと呼ばれます.
特許アクセス
let person = {
name: 'Lee'
};
// 마침표 표기법에 의한 프로퍼티 접근
console.log(person.name); // Lee
// 대괄호 표기법에 의한 프로퍼티 접근
console.log(person['name']); // Lee
Property動的作成
存在しないプロジェクトに値を割り当てると、プロジェクト値が動的に作成、追加、割り当てられます.
let person = {
name: 'Lee'
};
// person 객체에는 age 프로퍼티가 존재하지 않는다.
// 따라서 person 객체에 age 프로퍼티가 동적으로 값이 할당된다.
person.age = 20;
console.log(person); //{name: "Lee", age: 20}
プロパティの削除delete演算子を使用してプロファイルを削除する
let person = {
name: 'Lee'
};
// 프로퍼티 동적 생성
person.age = 20;
// person 객체에 age 프로퍼티가 존재한다.
// 따라서 delete 연산자로 age 프로퍼티를 삭제할 수 있다.
delete person.age;
// person 객체에 address 프로퍼티가 존재하지 않는다.
// 따라서 delete 연산자로 address 프로퍼티를 삭제할 수 없다. 이때 에러가 발생하지 않는다.
delete person.address;
console.log(person); // {name: "Lee"}
ES 6に追加されたオブジェクト文字の拡張Propertyサムネイル表示
ES 6では、変数をproperty値として使用する場合、変数名がpropertyキーと同じ名前である場合、propertyキーを省略することができる.
let x = 1, y = 2;
// 프로퍼티 축약 표현
const obj = { x, y };
console.log(obj); // {x: 1, y: 2 }
計算された構成名ES 6では、オブジェクトテキスト内部で計算されたコンフィギュレーション名を使用してコンフィギュレーションキーを動的に生成することもできます.
const prefix = 'prop';
let i = 0;
// 객체 리터럴 내부에서 계산된 프로퍼티 이름으로 프로퍼티 키를 동적 생성
const obj = {
[`${prefix}-${++i}`]: i,
[`${prefix}-${++i}`]: i,
[`${prefix}-${++i}`]: i
};
console.log(obj); // {prop-1: 1, prop-2: 2, prop-3: 3}
Reference
この問題について(オブジェクト), 我々は、より多くの情報をここで見つけました https://velog.io/@sweethome2/객체テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol