JavaScript 变量的江湖恩怨:一篇文章彻底讲清楚
2026/7/23 6:35:56 网站建设 项目流程

很久很久以前,在 JavaScript 世界里,有一个叫变量镇的地方。这里住着三兄弟:var、let、const。他们都能“装东西”,但性格、规矩、出身背景完全不一样。也正因为这三兄弟的性格差异,程序员江湖里每天都在上演各种事故现场。

今天,我就带你走进变量镇,看看他们各自是怎么“翻车”的,又该如何正确相处。

老大哥 var:江湖老油条

1、var 关键字:最早的居民

var 是 JavaScript 最早的变量声明方式,堪称上古神器

在 ES6 之前,整个变量镇几乎被 var 一统江湖。但问题也正是从这里开始的。

2、 var 声明作用域:没有块级概念

在变量镇里,var 有个非常“随意”的性格:它只认函数,不认花括号。

很多新手第一次看到这个结果时,内心都是崩溃的:

“不是写在 if 里面吗?怎么跑出来了?”

在 var 眼里,if、for、while 都不算地盘,只有函数才算真正的边界。

总结一句话:

var 只有函数作用域,没有块级作用域

3、 var 声明提升:先上车后补票

var 还有一个让人又爱又恨的能力——声明提升

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询