当前位置: 首页 > news >正文

一、ES6-let声明变量【解刨分析最详细】

一、块级作用域

{
let Tim="Tim是靓仔!"
}
console.log("Tim:",Tim)

打印结果:Tim未进行任何定义!
原因:因为Tim定义再块级{}里面,它的声音Tim只服务于该块级里面。而打印结果是再块级外面,无法打印出Tim变量。

二、无法重复声明

let Tim="Tim肯定是一个靓仔!"let Tim="Tim一条粉肠仔!"

打印结果:报错无法重复声明Tim!

原因:因为第一条声明已经说明"Tim肯定是一个靓仔!"就不能重复声明Tim是一套粉肠仔了。

三、变量没有提升

let Tim="我在外面"funtion(){console.log("Tim:"Tim)
let Tim="我在块级里面"}

这种情况是会报错未声明Tim变量,虽然块级里外都声明了Tim变量,但是变量处于块级里面,相当于在块级里面从新开始,无法于外面变量又关联。
正确如下:

let Tim="我在外面"funtion(){console.log("Tim:"Tim)
let Tim="我在块级里面"}

打印结果:Tim:我在块级里面

四、不与顶层对象挂钩

let Tim = "我是Tim"console.log(window.Tim)

打印结果:undefined

五:额外例子

为什么ES6会出现let呢?

举例1:

funtion(){var Tim="我在块级里面"}
console.log("Tim:"Tim)

var不区分块级内部,很容易导致数据污染,没有层次分明。

举例2:

var Tim;console.log("var:", Tim); // 输出: var: undefinedTim = "我是Tim";console.log("var:", Tim); // 输出: var: 我是Tim

举例3:

var Tim = "我在块级外面";function testFunction() {var Tim = "我在块级里面";
}testFunction(); // 这将执行函数,但不会返回或打印任何内容console.log("Tim:", Tim); // 这将打印全局作用域中的Tim变量的值

打印结果:Tim: 我在块级外面

相关文章:

  • 【Java Web】9.Maven高级
  • 双空间知识蒸馏用于大语言模型
  • 沪铜6月想法
  • 监控硬盘可以当台式机硬盘用吗
  • Jenkins | Jenkins构建成功服务进程关闭问题
  • html文字红色粗体,闪烁渐变动画效果
  • jenkins脚本查看及备份
  • 可视化图解算法48:有效括号序列
  • 板凳-------Mysql cookbook学习 (十)
  • OD 算法题 B卷【BOSS的收入】
  • Abaqus的线弹性与塑性
  • LangChain 入门指南:基于 DeepSeek 模型构建对话流程(保姆级)
  • HTML5+CSS3+JS小实例:具有粘性重力的磨砂玻璃导航栏
  • 【CPU】英特尔酷睿Ultra 5 225H与Ultra7 258V(Lunar Lake架构)PK
  • Spring Boot + MyBatis 集成支付宝支付流程
  • 在线教程|新加坡国立大学 Show Lab 发布 OmniConsistency 模型,实现即插即用的图像风格迁移
  • 打通印染车间“神经末梢”:DeviceNet转Ethernet/IP连接机器人的高效方案
  • CodeTop100 Day23
  • 代码随想录 算法训练 Day23:回溯算法part02
  • 提示词指南 --- 提示词的基本结构
  • wordpress怎样输入分数/知乎seo优化
  • 网站建设微金手指下拉15/seo承诺排名的公司
  • 专业做婚纱摄影网站/百度发广告需要多少钱
  • 动态网站系统是什么/搜索引擎优化的英语简称
  • 网站图片分辨率尺寸/软文是什么
  • 中国制造网官方网站入口网址/神秘网站