プロパティとメソッド
CoddyのJavaScriptジャーニー「オブジェクト指向プログラミング」セクションの一部 — レッスン 13/56。
JavaScriptのクラスを使用すると、そのクラスのすべてのインスタンスで共有されるプロパティやメソッドを定義できます。
プロパティを持つクラスを作成します:
class Car {
constructor(make, model) {
this.make = make;
this.model = model;
}
}インスタンスを作成すると、コンストラクタはこれらのプロパティを設定します。
const myCar = new Car('Toyota', 'Corolla');
console.log(myCar.make); // 出力: 'Toyota'
console.log(myCar.model); // 出力: 'Corolla'クラスにメソッドを追加します:
class Car {
constructor(make, model) {
this.make = make;
this.model = model;
}
getDescription() {
return `This car is a ${this.make} ${this.model}.`;
}
}これで、任意のインスタンスでこのメソッドを呼び出すことができます:
const myCar = new Car('Toyota', 'Corolla');
console.log(myCar.getDescription()); // 出力: 'This car is a Toyota Corolla.'チャレンジ
book.js ファイルに Book という名前のクラスを以下の内容で作成してください:
title、author、およびpagesパラメータを受け取り、それらをプロパティとして設定するコンストラクタ。getInfoという名前のメソッドで、次の形式の文字列を返すもの:“Title: [title], Author: [author], Pages: [pages]”class宣言の前にexportを追加して、クラスをエクスポートします。
チートシート
JavaScriptのクラスは、すべてのインスタンスで共有されるプロパティとメソッドを定義します。
コンストラクタを使用してクラスを作成します:
class Car {
constructor(make, model) {
this.make = make;
this.model = model;
}
}newを使用してインスタンスを作成します:
const myCar = new Car('Toyota', 'Corolla');
console.log(myCar.make); // 出力: 'Toyota'クラスにメソッドを追加します:
class Car {
constructor(make, model) {
this.make = make;
this.model = model;
}
getDescription() {
return `This car is a ${this.make} ${this.model}.`;
}
}インスタンスのメソッドを呼び出します:
const myCar = new Car('Toyota', 'Corolla');
console.log(myCar.getDescription()); // 出力: 'This car is a Toyota Corolla.'クラスをエクスポートします:
export class Car {
// クラスの定義
}自分で試してみよう
import { Book } from './book.js';
// テスト (この部分は変更しないでください)
const book = new Book("JavaScript Basics", "John Doe", 200);
console.log(book.getInfo());
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。