0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

JavaScript クラス | class構文

Last updated at Posted at 2023-11-21

JavaScriptのクラスについて

ES2015(ES6)までは、class構文なんてものは存在しなかった。

JavaScriptは、プロトタイプベースの言語であり、クラスベースの言語ではないからだ。

しかし、クラスが作れないのは不便だ

ということで、ES2015以降は、クラスも使えるようになった。

これによって、ありがたいことに、クラスベースの言語を習得している人にとって、わかりやすくJavaScriptでも同様にクラスを作成できるようになった。

クラスの作り方

//クラスの定義
class Playlist{
  //コンストラクタを作っている
  constructor(name){
    this.name = name;
    this.songs = [];
  }
  //メソッドを作っている
  addSong(song){
    this.songs.push(song);
  }
  //メソッドを作っている
  play(){
    return this.songs[0]
  }
  //メソッドを作っている
  removeSong(target){
    let array = [1, 2, 3, 4, 5];
    this.songs = this.songs.filter(function(item) {
      return item !== target;
    });

  }
}



let myPlaylist = new Playlist('お気に入りリスト');//クラスのインスタンスの作成
myPlaylist.addSong('Lemon');//プレイリストに、Lemonを追加
myPlaylist.addSong('花束');//プレイリストに、花束を追加
console.log(myPlaylist.play()); // 再生中: Lemon
myPlaylist.removeSong('Lemon');//プレイリストから、Lemonを削除
console.log(myPlaylist.play()); // 再生中:花束

その他のクラスのテクニック

  1. 継承
  2. ゲッターやセッター
  3. static
  4. public
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?