JavaScript では、さまざまなスコープを使用して、コード内のさまざまな場所から関数や変数にアクセスできます。このチュートリアルでは関数スコープについて学びます。さらに、JavaScript のさまざまなタイプの関数式についても学習します。
関数スコープ
JavaScript で新しい関数を作成すると、その特定の関数のスコープも作成されます。これは、関数内で宣言した変数や、関数内でネストされた関数を定義した変数は、関数ブロック内でのみアクセスできることを意味します。
ファンクションブロック内で定義した変数に関数外からアクセスしようとすると参照エラーとなります。
###文法###次の構文に従って関数を定義し、関数のスコープを理解できます。
リーリー上記の構文では、関数ブロックによって制限されているため、関数の外部の変数にアクセスできないことがわかります。
例 1
この例では、サンプル関数を作成し、ブロック スコープを使用して関数内の変数を定義しました。 Sample() 関数内で定義された変数に関数の外からアクセスしようとすると、JavaScript は参照エラーをスローします。
リーリー例 2
この例のサンプル関数では
nested_function()を定義します。 nested_function はサンプル関数のスコープ内にあるため、nested_funciton() を sample() 関数 の外で呼び出すことはできません。 リーリー JavaScript のさまざまなタイプの関数
関数の定義や宣言によって、関数にはたくさんの種類がありますが、ここでは一つずつ見ていきます。
通常の機能
通常の関数は、すべての JavaScript 開発者によって一般的に使用される関数です。関数名に続けて function キーワードを使用して、通常の関数を定義できます。
通常の関数は、関数の現在のスコープの最上位に残ります。これは、関数を定義する前に関数を呼び出すことはできますが、実行後に定義する必要があることを意味します。
###文法###この構文に従って通常の関数を定義します。
リーリー上記の構文では、 function キーワードを使用して関数を定義します。 「function_name」は関数の名前で、中括弧内に関数本体のコードを記述できます。
関数式
関数式も通常の関数と同様に機能します。ただし、違いは、名前がないことと、関数式を変数に格納する必要があることです。識別子を使用して、それを格納する関数を呼び出すことができます。
JavaScript は関数式を段階的に評価します。したがって、スコープの先頭に引き上げられないため、宣言する前に呼び出すことはできません。
###文法###この構文に従って関数式を定義します。
リーリー上記の構文では、function キーワードのみを使用して名前のない関数を定義し、それを function_identifier 変数に格納しました。さらに、ユーザーは function_identifier を使用して関数式を呼び出す方法を確認できます。
アロー関数
アロー関数は、2015 年の JavaScript の最後のメジャー リビジョンである ES6 で導入されました。これは、関数名なしで関数を定義するための短い構文です。また、それらの正体を含まないため、式および匿名関数と呼ばれます。
###文法###この構文に従ってアロー関数を定義します。
リーリー上記の構文では、アロー関数式を function_identifier に格納します。さらに、 function_identifier 変数を使用して関数を呼び出すときに、アロー関数内で引数と引数を渡しました。
関数を閉じる
JavaScript でネストされた関数を作成し、子関数を使用して親関数の変数にアクセスできます。子関数には親関数のスコープ内で定義されたすべての変数へのアクセスが含まれるため、子関数をクロージャ関数と呼ぶことができます。
###文法### リーリー上記の構文では、子関数内の親関数のすべての変数にアクセスでき、親関数は子関数を返します。したがって、子関数が親関数のスコープ内で定義されている場合でも、親関数の外部から間接的に子関数を呼び出すことができます。
###コンストラクタ### ###文法###コンストラクターを使用してオブジェクトを作成できます。
リーリー上記の構文では、コンストラクターのオブジェクトを作成します。
このチュートリアルの 2 つの例を通じて、入れ子関数の関数スコープがどのように機能するかを学びました。さらに、さまざまな種類の関数についても学びました。さらに、再帰関数やコールバック関数など、ユーザーがインターネット上で探索できる他のタイプの関数もいくつかあります。
以上がJavaScript 関数のスコープの概念とさまざまな種類の JavaScript 関数を調べるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

さまざまなJavaScriptエンジンは、各エンジンの実装原則と最適化戦略が異なるため、JavaScriptコードを解析および実行するときに異なる効果をもたらします。 1。語彙分析:ソースコードを語彙ユニットに変換します。 2。文法分析:抽象的な構文ツリーを生成します。 3。最適化とコンパイル:JITコンパイラを介してマシンコードを生成します。 4。実行:マシンコードを実行します。 V8エンジンはインスタントコンピレーションと非表示クラスを通じて最適化され、Spidermonkeyはタイプ推論システムを使用して、同じコードで異なるパフォーマンスパフォーマンスをもたらします。

現実世界におけるJavaScriptのアプリケーションには、サーバー側のプログラミング、モバイルアプリケーション開発、モノのインターネット制御が含まれます。 2。モバイルアプリケーションの開発は、ReactNativeを通じて実行され、クロスプラットフォームの展開をサポートします。 3.ハードウェアの相互作用に適したJohnny-Fiveライブラリを介したIoTデバイス制御に使用されます。

私はあなたの日常的な技術ツールを使用して機能的なマルチテナントSaaSアプリケーション(EDTECHアプリ)を作成しましたが、あなたは同じことをすることができます。 まず、マルチテナントSaaSアプリケーションとは何ですか? マルチテナントSaaSアプリケーションを使用すると、Singの複数の顧客にサービスを提供できます

この記事では、許可によって保護されたバックエンドとのフロントエンド統合を示し、next.jsを使用して機能的なedtech SaaSアプリケーションを構築します。 FrontEndはユーザーのアクセス許可を取得してUIの可視性を制御し、APIリクエストがロールベースに付着することを保証します

JavaScriptは、現代のWeb開発のコア言語であり、その多様性と柔軟性に広く使用されています。 1)フロントエンド開発:DOM操作と最新のフレームワーク(React、Vue.JS、Angularなど)を通じて、動的なWebページとシングルページアプリケーションを構築します。 2)サーバー側の開発:node.jsは、非ブロッキングI/Oモデルを使用して、高い並行性とリアルタイムアプリケーションを処理します。 3)モバイルおよびデスクトップアプリケーション開発:クロスプラットフォーム開発は、反応および電子を通じて実現され、開発効率を向上させます。

JavaScriptの最新トレンドには、TypeScriptの台頭、最新のフレームワークとライブラリの人気、WebAssemblyの適用が含まれます。将来の見通しは、より強力なタイプシステム、サーバー側のJavaScriptの開発、人工知能と機械学習の拡大、およびIoTおよびEDGEコンピューティングの可能性をカバーしています。

JavaScriptは現代のWeb開発の基礎であり、その主な機能には、イベント駆動型のプログラミング、動的コンテンツ生成、非同期プログラミングが含まれます。 1)イベント駆動型プログラミングにより、Webページはユーザー操作に応じて動的に変更できます。 2)動的コンテンツ生成により、条件に応じてページコンテンツを調整できます。 3)非同期プログラミングにより、ユーザーインターフェイスがブロックされないようにします。 JavaScriptは、Webインタラクション、シングルページアプリケーション、サーバー側の開発で広く使用されており、ユーザーエクスペリエンスとクロスプラットフォーム開発の柔軟性を大幅に改善しています。

Pythonはデータサイエンスや機械学習により適していますが、JavaScriptはフロントエンドとフルスタックの開発により適しています。 1. Pythonは、簡潔な構文とリッチライブラリエコシステムで知られており、データ分析とWeb開発に適しています。 2。JavaScriptは、フロントエンド開発の中核です。 node.jsはサーバー側のプログラミングをサポートしており、フルスタック開発に適しています。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ドリームウィーバー CS6
ビジュアル Web 開発ツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。
