機能紹介関数
アドバンテージ:
関数の作成コンストラクタは関数を作成する文法 var fun =new Function(コードブロック); この形式で構築される関数は比較的少ないです。 関数宣言は関数を作成する文法: 関数 関数名 (パラメータ 1、パラメータ 2...パラメータ N) { 声明... } 関数式関数を作成するvar 関数名 = 関数 関数名 (パラメータ 1、パラメータ 2... パラメータ N) { 声明... } 関数パラメータ形式パラメータ:
実際のパラメータ:
関数 sum(a, b) { コンソールにログ出力します。 } sum(1, 2); //関数を呼び出して実際のパラメータを渡す パラメータの数:
質問: JavaScript で関数を呼び出すときに変数パラメータを渡す場合、値渡しですか、それとも参照渡しですか?
var a = 3; 関数fn(a) { a = a + 1; } fn(a); console.log("a は:", a); // 3 ここでは価値(基本)移転として理解できる var obj = { name: "心猿" }; // オブジェクトを宣言する function fn(obj) { コンソールにログ出力します。 } fn(obj); // 「モンキーハート」 //これはアドレス値転送または参照転送(アドレス値)として理解できます 関数呼び出し直接通話:
関数fn(obj) { console.log("直接呼び出されました!"); } fn()//直接呼び出し オブジェクト経由での呼び出し
オブジェクト = { 楽しい(){ console.log("オブジェクトを通じて呼び出しました!"); } } Obj.fun(); //オブジェクトを通じて関数を呼び出す 新しい呼び出し
関数fun() { console.log("new 経由で呼び出しました!"); return 1 + 2; // 値を返す } var result = new fun(); console.log("結果:", 結果);//楽しい {} console.log("結果のデータ型:",typeof result);//"オブジェクト" 知らせ: 1. new で呼び出された関数は、関数が値を返すかどうかに関係なく、常にオブジェクトを取得します。 2. newを使用して関数を呼び出します。これはオブジェクトを作成するために使用される関数です(コンストラクタ) これは、呼び出しのために楽しいオブジェクトを作成する一時的な方法です var obj = { name: "心猿" }; // オブジェクトを宣言する function fun() { 年齢は5000です。 console.log("fun.call(obj) を通じて関数を呼び出します!"); } //obj.fun() から直接呼び出すことはできませんが、fun.call(obj) を介して呼び出すことができます。fun.call(obj) //obj.fun と同等です。 // fun.call(obj) によって呼び出された関数を出力します。 console.log("年齢情報を呼び出すobjのメソッドとしても使えます" + "age:", obj.age); //5000 関数の戻り値関数には戻り値がある場合とない場合があります。
関数をすぐに実行する関数は定義されるとすぐに呼び出されます。このような関数は即時実行関数と呼ばれます。 即時実行される関数は通常、1 回だけ実行されます。 文法: (関数(){ コードブロック; })(); 例えば: (関数(a, b) { console.log("数値:", a + b); })(1,3);//4 方法
var obj = 新しいオブジェクト() { obj.name = "モンキーハート"; 年齢 = 3000; obj.sayName = 関数(){ console.log("名前:",obj.name); } } obj.sayName(); 別の書き方: var obj = { 名前:「イーマ」 年齢: 3000, sayName: 関数 () { console.log("名前:", obj.name); } } obj.sayName(); オブジェクト内のプロパティを列挙するには:さまざまなトラバーサル方法の違いについては、私の記事「JavaScript における for、forEach、for...in、for...of の違いの比較」をお読みください。 文法 for(変数のインデックス in arr) { console.log(index); //コードブロック}
var 人 = { 名前:"孫悟空", 年齢:5777, 性別:"男性" }; for(var インデックス in person) { console.log(人[インデックス]); } 範囲スコープは変数の範囲を指します。 JavaScript には 2 種類のスコープがあります。 1. グローバルスコープ(グローバル変数) 2. 関数スコープ(ローカル変数) 3. ブロックレベルスコープ ES6 構文 グローバルスコープ
変数はウィンドウオブジェクトの属性として保存されます var a = 10; console.log("a:",a); console.log("window.a:",window.a); 環境上の理由により、node.jsでエラーが報告されます ブラウザでは正常に表示されます 関数はウィンドウオブジェクトのメソッドとして使用されます 関数fun(){ console.log("私はwindow.fun関数です!") } ウィンドウの呼び出し 関数のスコープ
ブロックスコープES6 (ECMAScript 2016) の変数はletを使用して宣言され、そのスコープはステートメントブロックに限定されます。 (i=0;i<100;i++とします){ } 要約するこの記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: 数百万のデータに対して MySQL クエリを最適化する 4 つの方法
>>: Apache Superset を使用して ClickHouse データを視覚化する 2 つの方法
今日は、CSS 3.0 で実装されたネオン ボタン アニメーション効果を紹介します。効果は次のとおり...
スクロールバーのデフォルトスタイルを変更する必要があるプロジェクトを多数作成しましたが、プラグインを...
次の図に示すように: 仮想マシンと Docker を使用するとき、「なぜ Docker は VM よ...
実際のプロジェクト開発では、多数のクエリや挿入、特にマルチスレッド挿入など、データベースに大きな負荷...
ショートハンドプロパティは、複数のプロパティに同時に値を割り当てるために使用されます。たとえば、fo...
仮想マシンは非常に便利なテストソフトウェアです。ハードウェアに損傷を与えることなく、さまざまなテスト...
Nginx は、IP ベースの仮想ホスト構成、ポート ベースの仮想ホスト構成、ドメイン名ベースの仮想...
序文インターセプターの機能の 1 つは、特定のメソッドの呼び出しをインターセプトできることです。イン...
目次序文1. Nginx+Tomcat 2. Nginxサーバーを構成する3. Tomcatアプリケ...
目次1. テンプレート文字列とは何ですか? 2. 複数行のテンプレート文字列2.1 式付きテンプレー...
上の境界線のみを表示する <table frame=above>下の境界線のみを表示する...
序文長い間、MySQL のアプリケーションおよび学習環境は MySQL 5.6 以前のバージョンであ...
まずmysqlを削除します: sudo apt-get remove mysql-*残ったデータをク...
目次序文ネットワーク速度のフロントエンド判定原理のまとめ1. img を読み込むか Ajax リクエ...
この記事の例では、ユーザー登録インターフェース機能を実装するためのJSの具体的なコードを参考までに共...