+function(){}();ここでのプラス記号は、!、〜、〜、その効果は次のような他の単位オペレーターに置き換えることもできます。
(function(){console.log( "foo!");})(); //または(function(){console.log( "foo!");}());このプラス記号がなければ、パーサーは関数が関数宣言の始まりであると考え、その後の()は構文エラーを引き起こします。 +記号が関数の前に追加されると、関数式になり、関数式の後にa()が追加されると、すぐに実行される関数になります。
JS関数の前の感嘆符の関数を見てみましょう。
1。JS関数宣言フォーム
function fna(){alert( 'msg');} //宣言定義関数2。JS関数発現フォーム
var func = function(agr1、arg2){//匿名関数アラートを作成(arg1 + '' + arg2);}3。JS匿名関数宣言の直後に実行するための一般的な形式
(function(){ / * code * /})();説明します
1。関数(function(){})を囲む最初のペアのペアは、名前のない関数をスクリプトに返し、次に空のブラケットのペアは、ブラケットの匿名関数のパラメーターを使用して、返された無名関数をすぐに実行します。
2。ブラケットを使用して関数本文を定義すると、パーサーは関数式の形で定義関数を呼び出します。言い換えれば、関数を関数式に変えることができるすべての方法により、パーサーは定義された関数を正しく呼び出すことができます。そして!それらの1つであり、 + - ||そのような機能があります。
3。この関数の関数は、主に匿名で自動的な実行です。