Menu
Coddy logo textTech

プロパティとメソッド

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.'
challenge icon

チャレンジ

book.js ファイルに Book という名前のクラスを以下の内容で作成してください:

  1. titleauthor、および pages パラメータを受け取り、それらをプロパティとして設定するコンストラクタ。
  2. getInfo という名前のメソッドで、次の形式の文字列を返すもの:“Title: [title], Author: [author], Pages: [pages]”
  3. 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());
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

オブジェクト指向プログラミングのすべてのレッスン