我理解为什么var取这个名字——它是变量,const——它是一个常数,但let的名字背后的含义是什么,它的作用域是当前块?顺其自然?

推荐答案

let是一种被早期编程语言(如Scheme和Basic)采用的数学语句.变量被认为是不适合较高抽象级别的低级实体,因此许多语言设计人员都希望引入类似但更强大的概念,如Clojure、F#、Scala(其中let可能表示一个值)或variable that can be assigned, but not changed(这反过来又使编译器能够捕获更多编程错误并更好地优化代码).

JavaScript从一开始就有var个关键字,所以他们只需要另一个关键字,并从几十种已经使用let作为传统关键字的其他语言中borrow ,尽可能接近var,尽管在JavaScript let中创建了块范围局部变量.

Javascript相关问答推荐

如何从JSON数组添加Google Maps标记—或者如何为数组添加参数到标记构造器

如何在Javascript中的控制台上以一行形式打印循环的结果

使用javascript将Plotly Expandable Sparkline转换为HighCharter Plot在bslib卡中

JSDoc创建并从另一个文件导入类型

如何解决useState错误—setSelect Image不是函数''

在Reaction中的handleSubmit按钮内,useSelector值仍然为空

当用户点击保存按钮时,如何实现任务的更改?

如何利用CSS中的隐藏元素实现平滑扩展和防止网格行间隙

无法重定向到Next.js中的动态URL

FireBase FiRestore安全规则-嵌套对象的MapDiff

Pevent触发material 用户界面数据网格中的自动保存

如何在Java脚本中并行运行for或任意循环的每次迭代

如何正确地在ComponentWillUnmount中卸载状态以避免内存泄漏?

我如何才能让p5.js在不使用实例模式的情况下工作?

相对于具有选定类的不同SVG组放置自定义工具提示

如果未定义,如何添加全局变量

CSS网格使页面自动滚动

Node.js的Fetch()调用总是创建新的Express会话

ReactJS扫描线演示:多个曲面未同时更新的问题

在Java脚本/类型脚本中覆盖父构造函数中的默认值