Scope
4515 ワード

スキャン
Javascriptでは、scorpがアクセスできる変数を定義します.グローバルスキャンとゾーンスキャンに分けられます.
グローバルスキャン

変数が関数外またはカッコ外で宣言されている場合、グローバルスキャンはグローバルスキャンと呼ばれます.
const globalVariable = 'global'
{
let name = 'j'
console.log(name) // j
name = 'hello'
console.log(name) // hello
console.log(globalName) // global
}
console.log(name) //
console.log(globalName) // global
グローバル変数は、アプリケーションの開始から終了までメモリに書き込むのが望ましい.ゾーンスキャン
ゾーンスキャンは、コードの特定の部分でのみ使用可能な変数です.関数スキャンとブロックスキャンに分けられます.
かんすうそういん

関数内で変数を宣言する場合は、宣言された関数内でのみ使用できます.
function jHello () {
const hello = 'Hello J!'
console.log(hello)
}
jHello() // 'Hello J!!'
console.log(hello) // Error, hello is not defined
ブロックスキャン

カッコ内で変数がletまたはconstであることを宣言すると、これらの変数はブロックでのみ使用できます.
{
const hello = 'Hello J!'
console.log(hello) // 'Hello J!'
}
console.log(hello) // Error, hello is not defined
リファレンスHow JavaScript variable scoping is just like multiple levels of government by Kevin Kononenko
https://www.freecodecamp.org/news/how-javascript-variable-scoping-is-just-like-multiple-levels-of-government-d7ddabc49bf1/
Reference
この問題について(Scope), 我々は、より多くの情報をここで見つけました https://velog.io/@youn9jo/scopeテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol