ES6的let和ES5的var有何本质区别?

2026-04-02 21:370阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计586个文字,预计阅读时间需要3分钟。

ES6的let和ES5的var有何本质区别?

目录 + var 关键字 + let 关键字 + 补充 + var 关键字 + 在 ES5 及以前,通过 var 在块级作用域中声明的变量,外部也可以访问。块级作用域是指一对大括号 {} 内的作用域;块级作用域可以是控制语句的作用域。

ES6的let和ES5的var有何本质区别?

目录
  • var 关键字
  • let 关键字
  • 补充

var 关键字

在 ES5 及以前,通过var在块级作用域中声明的变量,外边也可以访问。块级作用域就是一对{}的作用域;块级作用域可以是控制语句的作用域,也就是非函数的作用域。

function f() { { var x = 10; } console.log(x); // => 10 }

在 for 循环体中的变量 i,可以被打印出来,假如因为代码过多,不知道何时间变量重命名了,只有运行时才报错。又因为只有函数才可以创建一个块级作用域,所以,针对于上面出现的问题,就要通过 IIFE 来创建一个块级作用域。

阅读全文
标签:区别

本文共计586个文字,预计阅读时间需要3分钟。

ES6的let和ES5的var有何本质区别?

目录 + var 关键字 + let 关键字 + 补充 + var 关键字 + 在 ES5 及以前,通过 var 在块级作用域中声明的变量,外部也可以访问。块级作用域是指一对大括号 {} 内的作用域;块级作用域可以是控制语句的作用域。

ES6的let和ES5的var有何本质区别?

目录
  • var 关键字
  • let 关键字
  • 补充

var 关键字

在 ES5 及以前,通过var在块级作用域中声明的变量,外边也可以访问。块级作用域就是一对{}的作用域;块级作用域可以是控制语句的作用域,也就是非函数的作用域。

function f() { { var x = 10; } console.log(x); // => 10 }

在 for 循环体中的变量 i,可以被打印出来,假如因为代码过多,不知道何时间变量重命名了,只有运行时才报错。又因为只有函数才可以创建一个块级作用域,所以,针对于上面出现的问题,就要通过 IIFE 来创建一个块级作用域。

阅读全文
标签:区别