Scope Levels
                    
                    
                    
                  
1 - Global Scope
2 - Module Scope
3 - Block Scope
4 - Function Scope
Global Scope
<script src="script.js"></script>
<script>
  // script.js
  const a = 1
  console.log(a)
  // Prints: 1
</script>
<script src="script-1.js"></script>
<script src="script-2.js"></script>
<script>
  // script-1.js
  const a = 1
  // script-2.js
  console.log(a)
  // Prints: 1
</script>
Module Scope
<script src="script-1.js" type="module"></script>
<script src="script-2.js" type="module"></script>
<script>
  // script-1.js
  const a = 1
  console.log(a)
  // Prints: 1
  // script-2.js
  console.log(a)
  // Throws Uncaught Reference Error: a is not defined
</script>
Block Scope
function test() {
  const funcVar = "Func"
  if (true) {
    const ifVar = "If"
    console.log(funcVar, ifVar)
    // Prints: "Func", "If"
  }
  console.log(funVar, ifVar)
  // Throws Uncaught Reference Error: ifVar is not defined
}
{
  const a = 10
}
console.log(a)
// Throws Uncaught Reference Error: a is not defined
Function Scope
function test() {
  var funcVar = "Func"
  if (true) {
    var ifVar = "If"
    console.log(funcVar, ifVar)
    // Prints: "Func", "If"
  }
  console.log(funVar, ifVar)
  // Prints: "Func", "If"
}
 
 







 
 
 
 
 
0 nhận xét:
Post a Comment