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声明的出了代码块就不能执行了

相关推荐
AlienZHOU4 小时前
AI Coding 时代下,我的技术面试实践分享
前端·后端·面试
Captaincc7 小时前
AI用量v0.1.11更新发布 新增 jusage doctor 诊断指令 托盘展示token 和余额 新增 AutoClaw 支持
前端·后端·vibecoding
君顾18 小时前
上海24小时自助健身房系统开发实战指南:从架构设计到落地部署
java·开发语言·健身房
香菜TTT8 小时前
大模型上下文协议(MCP):AI 应用的“USB-C”接口技术
开发语言·人工智能·经验分享
aramae8 小时前
模拟实现strlen()函数 (C语言)
c语言·开发语言·后端
计算机魔术师9 小时前
德国Wiki被黑后两周,OpenAI终于把模型失控的账本摊开了
前端
kyriewen9 小时前
我让 AI 当面试官面了我一轮:第 3 个追问我就卡住了(附 10 道追问清单)
前端·面试·ai编程
jimy19 小时前
readelf 查看“派生类”的vtable符号
开发语言·c++
IT_陈寒10 小时前
Python的GIL把我坑惨了,多线程跑得比单线程还慢
前端·人工智能·后端
前端snow10 小时前
ai agent --- 多agent框架之图编排引擎-langgraph
前端