ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で名前付き関数を呼び出す 4 つの方法 推奨ページ 1/3_JavaScript スキル

JavaScript で名前付き関数を呼び出す 4 つの方法 推奨ページ 1/3_JavaScript スキル

PHP中文网
PHP中文网オリジナル
2016-05-16 18:50:381123ブラウズ

4 つのメソッドの実行結果に違いはありません。ただし、関数に戻り値がある場合、new で呼び出すと少しがっかりするかもしれません。

1. () 括弧演算子 最も一般的に使用されるのは、関数を呼び出すための () 演算子です。

コードをコピーします コードは次のとおりです。 🎜>

//パラメータなし function fun1
function fun1() {
alert('呼ばれました')
}
fun1()

/ / 関数 fun2 とパラメータ
function fun2(param) {
alert(param)
}
fun2('呼ばれました')

ECMAScript 3 の後の Function に call と apply を追加した後、
には 2 つのタイプがあります。 2. call

コードをコピー コードは次のとおりです:

//パラメータなし function fun1
function fun1() {
alert('呼ばれました')
}
fun1.call(null); //関数 fun2 とパラメータ
function fun2(param) {
alert(param);
}
fun2.call(null,'呼ばれました')



3.



コードをコピーします

コードは次のとおりです:

//パラメータなし function fun1

function fun1 () {

alert('呼び出されました');
}
fun1.apply(null)

//パラメータ function fun2
function fun2(param); 🎜>alert(param);
}
fun2.apply(null,['I was 電話を受けた'])



4. 使用は推奨されませんこのメソッド
)


コードをコピーします コードは次のとおりです:

//パラメータなし function fun1 function fun1 ( ) { alert('呼ばれました');

}

new fun1();


//関数 fun2 パラメータ
function fun2(param) {
alert(param);
}
new fun2('I was 電話を受けた')



ok、上記の呼び出しメソッドから、4 つの実行メソッドがあります結果に違いはありません。ただし、関数に戻り値がある場合、new で呼び出すと少しがっかりするかもしれません。

コードをコピー
コードは次のとおりです。

//関数 fun と戻り値 function fun() { alert( '呼ばれました');

return "ジャック" >}


var c = new fun();//[オブジェクト オブジェクト] 、なぜ「ジャック」ではないのでしょうか?



これに変更しました。



コードをコピーします

コードは次のとおりです:



/ /戻り値があります Function fun

function fun() {

alert('呼ばれました') return {name:'jack'}

; var c = new fun();

alert(c.name);//jack、再び正常に返されました



要約すると、new メソッドを使用して関数を呼び出すときです。戻り値がある場合、戻り値がString、Number、BooleanなどのJavaScriptの組み込み型(基本型)の場合、戻り値がオブジェクト、関数の場合は値を返しません。 、配列およびその他のオブジェクト型の場合、オブジェクト、関数、配列が返されます。

戻り値が組み込み型(基本型)の場合、new fun()は一体何を返すのでしょうか?次の記事では、新しいメソッド呼び出しの詳細について説明します。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。