ふみぽん's diary

技術的な備忘録が主のブログ

JavaScript入門⑤

JavaScriptの勉強をしたので備忘録として記事を書きます。(その5)


JavaScriptの関数

デフォルト引数

関数の実行時に引数がなくても使えるデフォルトの引数を設定することができる

const outputStr = (target = '焼きそば') => {
  console.log(`お腹が空いたら${target}を食べたい`);
}

outputStr(); //デフォルト引数を使って関数実行 => お腹が空いたら焼きそばを食べたい
outputStr('すき焼き');

関数とスコープ

  1. まず自関数のスコープ内にその値があるかどうかを確認する
  2. なければ、1つ外側のスコープにその値があるかどうかを確認する
  3. それを繰り返し、最終的にグローバルスコープにその値があるかどうかを確認する
    →このような動きのことをスコープチェーンという
//関数のスコープ
let a = 'グローバルスコープのa'

const func1 = () => {
  let a = 'func1のa';
  console.log(a); // => func1のa

  const func2 = () => {
    let a = 'func2のa';
    console.log(a); // => func2のa
  }
  func2();
}

console.log(a); // => グローバルスコープのa

func1();