JavaScript関数定義

JavaScript関数は、functionキーワードで定義されます。

関数宣言または関数式を使用できます。

関数宣言

このチュートリアルでは、関数が次の構文で宣言されていることを学びました。

function functionName(parameters){
//実行されるコード
}

宣言された関数はすぐには実行されません。, それらは”後で使用するために保存”され、呼び出されたとき(呼び出されたとき)に後で実行されます。

function myFunction(a,b){
return a*b;
}

自分で試してみてください”

セミコロンは、実行可能なJavaScriptステートメントを分離するために使用されます。
関数宣言は実行可能ステートメントではないため、セミコロンで終わらせることは一般的ではありません。

関数式

JavaScript関数は式を使用して定義することもできます。,

関数式は変数に格納できます。

Example

var x=function(a,b){return a*b};

自分で試してみてください”

関数式が変数に格納された後、変数は関数として使用できます。

Example

var x=function(a,b){return a*b};r var z=x(4,3);

自分で試してみてください”

上記の関数は実際には無名関数(名前のない関数)です。

変数に格納されている関数は関数名を必要としません。 常に変数名を使用して呼び出されます(呼び出されます)。,

上記の関数は実行可能ステートメントの一部であるため、セミコロンで終わります。

Function()コンストラクタ

前の例で見たように、JavaScript関数はfunctionキーワードで定義されています。

関数は、Function()と呼ばれる組み込みのJavaScript関数コンストラクタで定義することもできます。,

var myFunction=new Function(“a”,”b”,”return a*b”);
var x=myFunction(4,3);

自分で試してみてください”

実際には関数コンストラクタを使用する必要はありません。 上記の例は書くことと同じです:

Example

var myFunction=function(a,b){return a*b};
var x=myFunction(4,3);

自分で試してみてください”

ほとんどの場合、JavaScriptでnewキーワードを使用することは避けることができます。,

関数Hoisting

このチュートリアルの前で、”hoisting”(JavaScript Hoisting)について学びました。

巻き上げは、宣言を現在のスコープの先頭に移動するJavaScriptのデフォルトの動作です。

巻き上げは、変数宣言および関数宣言に適用されます。

このため、JavaScript関数は宣言される前に呼び出すことができます。

myFunction(5);
function myFunction(y){
return y*y;
}

式を使用して定義された関数はホイストされません。,

自己呼び出し関数

関数式は”自己呼び出し”にすることができます。

自己呼び出し式は、呼び出されることなく自動的に呼び出されます(開始されます)。

関数式の後に()が続くと、関数式は自動的に実行されます。

関数宣言を自己呼び出すことはできません。

関数式であることを示すために、関数の周りに括弧を追加する必要があります。

Example

(function(){
var x=”こんにちは!!,”;//私は自分自身を呼び出します
})();

自分で試してみてください”

上記の関数は実際には匿名の自己呼び出し関数(名前のない関数)です。,

関数は値として使用できます

JavaScript関数は値として使用できます。

Example

function myFunction(a,b){
return a*b;
}
var x=myFunction(4,3);

自分で試してみてください”

JavaScript関数は式で使用できます。

Example

function myfunction(a,b){
Return a*b;
}
var x=myfunction(4, 3) * 2;

自分で試してみてください”

関数はオブジェクトです

JavaScriptのtypeof演算子は関数に対して”function”を返します。,

しかし、JavaScript関数はオブジェクトとして記述するのが最善です。

JavaScript関数には、プロパティとメソッドの両方があります。

arguments.lengthプロパティは、関数が呼び出されたときに受け取った引数の数を返します。

Example

function myFunction(a,b){
引数を返します。長さ;
}

自分で試してみてください”

toString()メソッドは、関数を文字列として返します。

function myFunction(a,b){
return a*b;
}
var txt=myFunction。,toString();

それを自分で試してみてください”

オブジェクトのプロパティとして定義された関数は、オブジェクトへのメソッドと呼ばれます。
機能設計の新しいオブジェクトを作成し、と呼ばれるオブジェクトコンストラクタです。

矢印関数

矢印関数では、関数式を記述するための短い構文を使用できます。

あなたは必要ありませんfunctionキーワード、returnキーワード、および中括弧。,

//ES5
var x=function(x,y){
return x*y;
}
//ES6
const x=(x,y)=>x*y;

自分で試してみてください”

矢印関数には独自のthis.オブジェクトメソッドの定義には適していません。

矢印関数は吊り上げられません。 それらは、使用する前に定義する必要があります。

constを使用すると、関数式は常に定数値であるため、varを使用するよりも安全です。,

returnキーワードと中括弧を省略できるのは、関数が単一のステートメントの場合のみです。 このため、常にそれらを保持するのが良い習慣かもしれません。

Example

const x=(x,y)=>{return x*y};

自分で試してみてください”

矢印関数はIE11以前ではサポートされていません。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ツールバーへスキップ