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 3 years have passed since last update.

JavaScriptをすこーし勉強してみたので書き留める④

Posted at

最低限の知識一応あるけど、復習も兼ねて書いてみることにするの巻その④

関数宣言と関数式(超ざっくり)

  • 関数式
    • 実行が関数式に到達された時に作成される。その後から使用できる。
    • if文外で変数宣言⇨if文内で関数式を使用して代入する⇨あとで使える
  • 関数宣言
    • スクリプト/コードブロック全体で使用できる。
    • 関数宣言は関数式より早く使えるようになる
    • ブロック外だと使えない

アロー関数

アロー関数で書くと...

let func = (arg1, arg2, ...argN) => expression

同じのを関数式で書くと...

let func = function(arg1, arg2, ...argN) {
  return expression;
}

使ってみよう!こんな感じ。

let sum = (a, b) => a + b;

/* アロー関数は次よりも短い形式です:

let sum = function(a, b) {
  return a + b;
};
*/

alert( sum(1, 2) ); // 3

引数一つならかっこ省略でもっと短く。

// 次と同じです
// let double = function(n) { return n * 2 }
let double = n => n * 2;

alert( double(3) ); // 6

引数なしならかっこは必須。

let sayHi = () => alert("Hello!");

sayHi();

アロー関数は引数式と同じように使用できる。

let age = prompt("What is your age?", 18);

let welcome = (age < 18) ?
  () => alert('Hello') :
  () => alert("Greetings!");

welcome(); // ok now

複数行のアロー関数

let sum = (a, b) => {  // 波括弧を使って複数行の関数を書けます
  let result = a + b;
  return result; // 波括弧を使った場合、結果を得るには return を使います
};

alert( sum(1, 2) ); // 3

雑になってしまった....
ちゃんと書けるようになって理解したら書き直そうかね。

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?