構文 | 説明 |
---|---|
function 関数名 ( [ 可変長引数 ] ) { [ 処理コード ] } | function 宣言 |
function [ 関数名 ] ( [ 可変長引数 ] ) { [ 処理コード ] } | function 式 関数名を省略すると無名関数 関数名は再帰関数で使用 |
[new] Function ( [ 可変長引数文字列 , ] 処理コード文字列 ) | 明示的なFunction【関数】オブジェクトの生成 通常は未使用 |
// function 宣言
function func1(x, y) {
return (x + y);
}
console.log(func1(1, 2)); // 出力:3
// function 式
var func2 = function (x, y) {
return (x + y);
}
console.log(func2(1, 2)); // 出力:3
// 明示的なFunction【関数】オブジェクトの生成
var func3 = new Function("x", "y", "return (x + y);");
console.log(func3(1, 2)); // 出力:3
// 関数定義の巻き上げ
console.log(func(1, 2)); // 出力:3
function func(x, y) { // 関数定義が、関数参照の後
return (x + y);
}
/**
* 関数を返却
* @return 関数
*/
function getFunc() {
/**
* 内部関数
* @global
* @param {number} p1
* @return {number} 二乗
*/
function innerFunc(p1) {
console.log(p1 * p1);
}
return innerFunc;
}
/**
* 関数の説明
* @function
*/
var func = getFunc();
func(2); // 出力:4
func(3); // 出力:9
Function Definitions | ||
---|---|---|
ES2022 (13) | ES2021 (12) | ES2020 (11) |
Function Objects | ||
ES2022 (13) | ES2021 (12) | ES2020 (11) |