type
status
date
slug
summary
tags
category
icon
password
URL
JavaScript 底层原理包括变量提升、作用域链等,ES6 引入了 let 和 const 来解决 var 存在的全局作用域、变量污染等问题,同时通过块级作用域和暂时性死区提高了代码可读性和安全性,满足了 JavaScript 成为企业级语言的需求,const 还解决了 var 缺乏常量功能的问题。
在回答的时候穿插一些例子,你就举下面这些例子:
1.
var
变量声明- 函数作用域:
var
声明的变量在函数作用域中有效,而不是块级作用域。
- 变量提升:使用
var
声明的变量会被提升到其所在函数的顶部。
示例:
第一处输出在我们看来很反人类,这都不报错,所以 es6 后,就推出了 let。
2.
let
变量声明let
是 ES6 引入的新关键字,用于声明变量。相比var
,let
有以下优点:- 块级作用域:
let
声明的变量只在其所在的块级作用域内有效。
- 暂时性死区:使用
let
声明的变量在声明之前是不可访问的。
示例:
3.
const
常量声明const
也是 ES6 引入的关键字,用于声明常量。与let
相比,const
有以下特点:- 常量值不可变:使用
const
声明的变量必须在声明时初始化,并且其值在声明后不能被修改。
示例:
- 作者:Orcatt
- 链接:https://orcatt.one/article/efdcd468-f4ba-419c-b071-3b3d84885f0f
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。