ProgateのJavaScriptまとめ②(Ⅲ、Ⅳ)

【JavaScript Ⅲ、Ⅳ】

*関数

📖関数とは、いくつかの処理をまとめたもの
🌟const 定数名=function(){
   まとめたい処理
};
定数名();
→関数を定義して呼び出す基本形

🌟const 定数名=(引数名)=>{
   まとめたい処理
};
定数名(値);
→上と同じだが別の書き方で、アロー関数という。受け取った値が引数に代入されて、処理が行われる。
※引数は関数の中で、定数や変数のように使える
※複数の引数を使う時はコンマで区切る
📖関数の中でreturn 値を使うと、呼び出し元で値を受け取ることができる
※returnで処理を終了させるので、以降の処理は実行されない

📖関数の外側で定義した定数や変数は、関数の内外どちらでも使える。
関数の内側で定義した定数や変数は、関数の内側でしか使えない!
→これは、ifやswitch、forやwhileも同じ
※関数の内外に同名の定数を定義した場合、内と外で別物として扱われる

🌟const 定数名={
プロパティ名:(引数名)=>{
   まとめたい処理

};
定数名.プロパティ名(値);
→オブジェクトの値の部分に関数を用いることができる。呼び出すと、関数内の処理が行われる

*クラス

📖オブジェクトを生成するためのクラス(設計図)を用意する。クラスから生成したオブジェクトはインスタンスという
🌟classクラス名{
constructor(){
    処理や設定


const インスタンス=new クラス名();
→クラスの中にコンストラクタを追加する。コンストラクタは、インスタンスを生成する時に実行したい処理や設定を追加するための機能。インスタンスが生成された直後に処理を実行する。
※インスタンスが生成されるたびに行われる

📖コンストラクタの中で、
this.プロパティ名=値とすることで生成されたインスタンスにプロパティと値を追加できる
→インスタンスはオブジェクト同様クラスの外で、インスタンス.プロパティ名で使える

🌟class  クラス名{
constructor(引数){
    処理や設定
}}
const インスタンス=new クラス名(値);
→インスタンスを生成して値を引数として受け取って、処理や設定を行う

例)this.name=nameなどとして、受け取った引数をコンストラクタ内で使うことができる

*メソッド

📖メソッド
インスタンスの動作のようなもの。クラスの中で定義する
🌟class クラス名{
メソッド名(){
行いたい処理


インスタンス.メソッド名();
→メソッドは、そのクラスから生成したインスタンスに対して呼び出す
📖メソッド内でインスタンスの値を使う時は、this.プロパティ名とする
📖メソッド内でメソッドを呼び出すこともできる。this.メソッド名();とすることで、同じクラスの別メソッドを実行

*継承

🌟class 子クラス extends 親クラス{
メソッドの定義

→親クラスを継承することで、親クラスのメソッドを子クラスで使用できる。子クラスにメソッドを追加できる。子クラスのメソッドは親クラスからは呼び出せない

📖メソッド内では関数と同じくreturnで戻り値を使うことができる
📖親子クラスで同名のメソッドがある時は、子クラスのメソッドが優先的に呼び出される
→上書きしているからオーバーライドと呼ぶ
📖コンストラクタもオーバーライドできる。子クラスの1行目に、
super(親クラスの引数名)が必要。
その下に子クラス独自の処理実行を書いていく

📖クラスからオブジェクト(インスタンス)を作成
→コンストラクタ内の処理や設定によって空のインスタンスに情報が与えられる
📖ここでオブジェクト(インスタンス)に与えられるものとしては、
キー:値→プロパティ(オブジェクトの情報を取得、設定)
キー:関数→メソッド(オブジェクトに命令、動作)


この記事が気に入ったらサポートをしてみませんか?