千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > JavaScript的作用域

JavaScript的作用域

来源:千锋教育
发布人:zyh
时间: 2023-06-29 16:54:00 1688028840

  JavaScript中有两种主要的作用域:全局作用域和局部作用域(也称为函数作用域)。

  1. 全局作用域(Global Scope):全局作用域是指在代码中任何地方都能访问的作用域。在浏览器环境中,全局作用域通常是指在所有函数和代码块之外声明的变量和函数。全局作用域中声明的变量和函数在整个程序中都是可见和可访问的。  

var globalVariable = 'I am a global variable';

function globalFunction() {
console.log('I am a global function');
}

console.log(globalVariable); // 输出:I am a global variable
globalFunction(); // 输出:I am a global function

  2. 局部作用域(Local Scope):局部作用域是指在函数内部声明的作用域。每当创建一个函数时,都会创建一个新的局部作用域。变量和函数在其所在的局部作用域内是可见和可访问的,但在其他函数或全局作用域中不可访问。  

function localFunction() {
var localVariable = 'I am a local variable';
console.log(localVariable);
}

localFunction(); // 输出:I am a local variable
console.log(localVariable); // 抛出错误,localVariable 在全局作用域中不可访问

  在ES6中,还引入了块级作用域(Block Scope)的概念,通过使用`let`和`const`来声明变量,可以在`if`语句、`for`循环等代码块内创建局部作用域。 

function blockScopeExample() {
if (true) {
let blockVariable = 'I am a block variable';
const blockConstant = 'I am a block constant';
console.log(blockVariable); // 输出:I am a block variable
console.log(blockConstant); // 输出:I am a block constant
}
console.log(blockVariable); // 抛出错误,blockVariable 在块级作用域之外不可访问
console.log(blockConstant); // 抛出错误,blockConstant 在块级作用域之外不可访问
}

blockScopeExample();

  理解作用域对于编写可维护和可扩展的JavaScript代码至关重要,因为它确定了变量和函数的可见性和生命周期。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT