千锋教育JavaScript全套视频教程(10天学会Js,前端javascrip

JavaScript的作用域是指变量、函数和对象在代码中可访问的范围。作用域规定了在何处以及如何查找变量。
全局作用域(Global Scope):全局作用域是在整个代码中都可访问的范围。在顶层定义的变量和函数都属于全局作用域。
函数作用域(Function Scope):函数作用域指的是在函数内部定义的变量和函数只在函数内部可访问。函数作用域是JavaScript中最常见的作用域。
块级作用域(Block Scope):块级作用域指的是由花括号({})括起来的任何代码块内部创建的变量,在该块内部可访问,块外部不可访问。在ES6(ECMAScript 2015)之前,JavaScript没有块级作用域,只有函数作用域和全局作用域。在ES6引入的let和const关键字可以创建块级作用域的变量。
作用域链(Scope Chain):当在JavaScript中访问一个变量时,解释器会从当前作用域开始查找该变量,如果找不到,就会沿着作用域链向上查找,直到找到该变量或者到达全局作用域。作用域链是由嵌套的作用域所形成的。