LoginSignup
2
2

More than 5 years have passed since last update.

JavaScriptの関数

Posted at

JavaScriptの関数

そこいらの言語と違って色々な書き方がある?javascriptの関数を整理。

  • function命令で定義
  • Functionコンストラクタ経由で定義
  • 関数リテラル表現で定義

function命令で定義

オーソドックスなやつ。

function 関数名(引数){
関数内で実行される処理
}

//example
function sum(x,y) {
    var r = x + y;
    return r;
}

document.writeln('sum:' + sum(3,5));      //8

Functionコンストラクタ経由で定義

var 変数名 = new Function(引数,関数本体);

//example
var sum = new Function("x","y","var r = x + y; return r;");

document.writeln('sum:' + sum(3,5));      //8

これは何をしているかというと
FunctionオブジェクトというものがJavaScriptの組み込みオブジェクトであるので、
それを利用している。
つまりFunctionオブジェクトのコンストラクタを利用して関数を定義することができる。

関数リテラル表現で定義

javascriptでは関数を変数に代入したり、ある関数の引数として渡すことができる。
よって以下のような記述が可能。

var 変数名 = function(引数){
関数内で実行される処理
}

//example
var sum = function(x,y){
    return x+y;
};

document.writeln('sum:' + sum(3,5));      //8

この場合function(x,y)と名前がない関数を定義しているので
匿名関数、あるいは無名関数と呼ぶ。

2
2
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
2
2