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

相关推荐
biter down2 小时前
C++ 设计不可被继承的类
java·开发语言·c++
放下华子我只抽RuiKe52 小时前
机器学习终章:集成学习的巅峰与全流程实战复盘
开发语言·人工智能·python·机器学习·数据挖掘·机器人·集成学习
摇滚侠2 小时前
Java 项目教程《尚庭公寓-下》,单体架构项目,从开发到部署
java·开发语言·架构
浅念-2 小时前
C++ 异常
开发语言·数据结构·数据库·c++·经验分享·笔记·学习
lxh01132 小时前
嵌套数组生成器题解
开发语言·javascript·ecmascript
2401_884563242 小时前
高性能日志库C++实现
开发语言·c++·算法
远方的小草2 小时前
检索增强生成技术RAG
前端
Dxy12393102162 小时前
DrissionPage使用js点击:突破常规交互限制的“隐形手”
开发语言·javascript·交互
handler012 小时前
基础算法:BFS
开发语言·数据结构·c++·学习·算法·宽度优先