javascript之变量作用域

全局变量作用域

在函数外面声明的变量,在任何位置都可以使用

局部变量作用域

在函数内部声明的变量,在函数外面就不能使用,只能在声明它的函数使用

javascript 复制代码
let name = 'tom' //全局变量,在任何位置都可以访问

        function f1()
        {
            let age = 18 //局部变量,当函数结束,变量会销毁
            
            console.log(name)
            console.log(age)
        }
f1()
console.log(age)

上面的代码是在f1函数里面声明了一个age变量,name变量在函数外声明,在f1函数里面,这两个变量都能执行,但是在函数外面age变量则执行不了。

块级作用域

主要是let关键字,在{}中使用let声明的变量,只能在这个代码块里面使用,var则不受这个限制

javascript 复制代码
if(true)
        {
            var a=2
            let b=3
            console.log("a的值"+a)
            console.log("b的值"+b)
        }
        console.log("a的值"+a)
        console.log("b的值"+b)

这段代码在{}声明了a,b两个变量,分别用var和let声明,var声明的变量可以在代码块外执行,let声明的出了代码块就不能执行了

相关推荐
Xp021911033 分钟前
知网研学、万方、WPS、大以论文四大排版工具横评,新用户免费排版等你领!
前端·css·html·生活·wps·论文排版
全栈技术负责人3 分钟前
老项目新需求AI前端开发指南
前端·ai编程
清风一徐4 分钟前
Python函数基础
开发语言·python
代码地平线6 分钟前
C++ 入门篇类和对象·上篇:从本质深剖类与对象与C++基本用法
c语言·开发语言·数据结构·c++·笔记·算法
云上码厂7 分钟前
R 语言基于 lavaan 包实现结构方程模型 (SEM) 从环境配置到建模绘图全流程实战
开发语言·r语言
zhangfeng113310 分钟前
htc 中minconda 明明安装了 Python 3.10显示 python 3.8 因为 `conda activate` 没有真正切换成功
开发语言·python·conda
周凡12313 分钟前
AI 时代的 Web JavaScript 逆向分析实践与思考
前端·javascript·人工智能
十五年专注C++开发14 分钟前
C++17之类模板实参自动推导CTAD
开发语言·c++·聚合初始化·catd
jerryinwuhan18 分钟前
marker BiBERTo解释
java·前端·人工智能
iCxhust19 分钟前
C# 程序,实现二进制文件十六进制查看器,支持按行定位
开发语言·单片机·嵌入式硬件·c#·微机原理·8086最小系统·8088单板机