開発者が知っておくべきコアJavaScriptの基礎を学びましょう。この解釈されたプログラミング言語は、エンタープライズレベルのアプリを開発するために広く使用されています。

JavaScriptの基本概念

概要

JavaScriptは、動的なWebベースのアプリケーションを開発するために使用されるスクリプト言語です。 HTMLとCSSを使用して静的Webサイトを構築しますが、JavaScriptはインタラクティブ性を追加するために使用されます。以前のブログ投稿では、ドキュメントオブジェクトモデルについて説明しましたが、他の重要な JavaScriptの基本概念を取り上げます 。 Web開発者は、その豊富な機能とフレームワークのために、このスクリプト言語を選択する傾向があります。さらに、JavaScriptを学習することにより、フロントエンドとバックエンドで開発を行うことができます。ただし、Webアプリだけでなくモバイルアプリも開発することはできません。このJavaScriptチュートリアルは、インタビューセッションの準備をしている場合に役立ちます。それにもかかわらず、このガイドはあなたの知識バケツにさらに追加するために読む価値があります。 この記事では、次のポイントについて説明します。

JavaScriptで巻き上げているもの

現在のスコープの上に関数または可変宣言の現象は、巻き上げとして知られています。これは非常に重要な概念であり、ほとんどのJavaScript開発者はそれを認識していません。ただし、ここで注意すべき重要なことは、関数/変数宣言のみが関数/変数の初期化ではなく、上部に取られることです。 例を見て、以下のコードスニペットを見てみましょう。

printResults();
function printResults(){
    console.log("hello programmers")
}
// output: hello programmers

上記のコードの例では、関数宣言の前に関数呼び出しを行いましたが、コードが正常に実行され、JavaScriptが編成されているためです。基本的に、コンパイル時間中に、JavaScriptインタープリターはコードをスキャンし、すべての機能/変数を収集し、それらを語彙環境と呼ばれるメモリに入れます。変数でも同じことが起こります。

name = "mustafa";
console.log(name);
var name;

同様に、名前変数の初期化は宣言の前に行われており、コードはエラーなしで機能します。繰り返しになりますが、コンパイル時間中、JSインタープリターは語彙環境を調べて変数宣言を見つけ、コードを実行しました。 したがって、LETおよびconstキーワードで変数を宣言すると、JavaScriptはそれらを少し違った方法で巻き上げます。

name = "mustafa";
console.log(name);
let name;
// Uncaught ReferenceError: Cannot access 'name' before initialization

上記のコードスニペットのエラーが発生しました。その理由は、この変数を巻き上げている間に初期化が行われなかったからです。簡単に言えば、すべての宣言は「未定義」で初期化され、「let」または「const」で宣言された変数は巻き上げで初期化されません。

JavaScriptのスコープ

範囲は、開発者が知っておくべきJavaScriptの基本概念の1つです。ただし、JavaScriptスコープを使用することは簡単ではなく、少し違います。したがって、JavaScriptには3種類のスコープがあり、これらは次のとおりです。 ブロックレベル :「let」または「const」で宣言された変数には、ブロックレベルのスコープが含まれています。

if(true){
  let a = 1;
}
// a is not accessible outside the curly braces.

変数「A」は、ブロックレベルのスコープを備えているため、巻き毛のブレース{}の外側にアクセスできません。 関数レベル :JavaScript関数内で宣言された変数にはローカルスコープがあります。

function innerFunc(){
        let last_name = "ashraf";
        console.log("hello "+last_name);
    }
// last_name is not accessible outside the function.

ここで注意すべき重要なことは、「let」「const」と「var」で宣言された変数が関数本文内に関数スコープを持っていることです。 グローバルレベル :関数の外側で宣言された変数はグローバル変数になります。 「let」、「const」、または「var」キーワードを使用してそれらを宣言したとしても。さらに、以下のコードスニペットに示すように、キーワードを使用せずに宣言された場合、変数はグローバル変数になります。

function innerFunc(){
        last_name = "ashraf";
        console.log("hello "+last_name);
    }
// last_name is accessible outside the function too and is of global scope

JavaScriptクロージャー

これは、スコープとデータのカプセル化に関するJavaScriptの知識を強化するもう1つの重要な概念です。最も単純な形式では、関数内の関数は閉鎖として知られています。内部関数を閉鎖と呼ぶことができます。この内部関数には、3種類の範囲があります。

  • 独自のブロックレベルの範囲があります。
  • 親の変数にアクセスできます。
  • グローバルスコープの変数も閉鎖内でアクセスできます。 閉鎖を作成する方法を見てみましょう:
 function myFunction(){
    let first_name = "mustafa";
    function innerFunc(){
        let last_name = "ashraf";
        console.log("hello "+first_name+" "+last_name);
    }
    return innerFunc()
}
myFunction()
// output: hello mustafa ashraf

変数first_nameはinnerfuncという名前の関数内でアクセス可能ですが、親関数はlast_name変数にアクセスできません。この動作により、プログラマーはスコープチェーンにプライベート変数を作成できます。

結論

ここでこのJavaScriptガイドを終了し、 JavaScriptの基本概念をよりよく理解できることを願っています 。さらに、 JavaScriptの閉鎖、JavaScript のスコープ、および巻き上げも行いました。初心者には必須の他の多くの重要な概念があります。したがって、この記事は、JavaScriptの概念を改善または更新するために繁栄している場合に役立ちます。さらに、「参照」セクションで説明されているブログ投稿をご覧ください。

私達と接続

最後に、containerize.comは、さまざまなエキサイティングなトピックに関する継続的なJavaScriptチュートリアルを提供しています。 FacebookLinkedInTwitterなど、ソーシャルメディアプラットフォームでフォローしてループにとどまることができます。

質問する

フォーラムでの質問や質問についてお知らせください。

FAQ

JavaScriptで学ぶための重要な概念は何ですか? JavaScriptの基本概念を知るために、このJavaScriptの初心者のガイドに従ってフォローしてください。

参照