読者です 読者をやめる 読者になる 読者になる

フロントサイドエンジニアという選択肢

HTMLコーダー → ECサイト運営 → システムエンジニア という経歴の著者がフロントサイトエンジニアという職業に今後の活路を見出し、その道に進むために取得した技術を貯めておくブログ

(Javascript)関数を値として持たせる(カッコ無し関数)

関数を呼び出す際、alert() のようにカッコを付けて呼び出すが、カッコなしで呼び出すことでその関数を参照させることができるようになります。

下の例では、オブジェクトのプロパティにカッコなしの関数を参照させるパターンと、配列の中で参照させるパターンを記述しています。

// 足し算を行う関数
function add(a, b)
{
    return a+b;
}

// 引き算を行う関数
function subtract(a, b)
{
    return a-b;
}

// カッコなしの関数を使って、オブジェクトのプロパティとして関数を登録
var simpleMath = {add:add, subtract:subtract};
// ↓ オブジェクトのプロパティで関数を呼べる用になる。
document.write(simpleMath.add(100, 11)); // 111

// 同じようにカッコなしの関数を配列に格納。
var mathArray = [add, subtract];
// ↓ 配列のインデックスで関数を呼べるようになる
document.write(mathArray[1](200, 1)); // 199