JS スコープの問題に関しては、面接官が面接中に必ず尋ねる質問で、非常にイライラすることがあります。次の記事では、主に javascript スコープに関する一般的な面接の質問を紹介します。それを参照してください。以下を見てみましょう。
おすすめ関連記事: 2020年のjs面接質問の最も完全なコレクション(最新)
この記事は主にJavaScriptスコープの面接質問に関する関連コンテンツを共有し、あなたのためにそれらを共有します参考にして勉強してください。以下を見てみましょう。
1. スコープ:
スコープを理解する前に、まずいくつかの基本的な概念を理解する必要があります:
すべての 変数 と 関数 には独自のアクションのスコープがあり、その範囲を超えて使用することはできません。これをスコープといいます。
2. グローバル変数、ローカル変数:
1. グローバル変数:
(1) var a=1;
などのグローバル スコープで宣言された変数var a=1;
(2)只有赋值没有声明的值,如a=2;
(注:如果a=2在函数环境中,也是全局变量)
2.局部变量:
写入函数中的变量,叫做局部变量。
3.作用:
(1)程序的安全。
(2)内存的释放。
三、作用域链:
查找量的过程。先找自己局部环境有没有声明或者是函数,如果有,则查看声明有无赋值或者是函数的内容,如果没有,则向上一级查找。
四、预解析顺序:
每个程序都要做的工作,程序开始先预解析语法,标点符号是否有误,解析内存是否可容纳,解析变量……直到解析无误了,才开始按正常的流程顺序走。试想一下,如果没有预解析顺序,直接按流程顺序走,可能程序执行到最后一个函数,发现了语法错误,才开始报错,那性能要有多差啊!
顺序内容:
1.文件内引用的