前端JS核心语法高频面试题(真实面试版+详细答案).docxVIP

  • 2
  • 0
  • 约4.36千字
  • 约 7页
  • 2026-08-01 发布于河北
  • 举报

前端JS核心语法高频面试题(真实面试版+详细答案).docx

前端JS核心语法高频面试题(真实面试版+详细答案)

一、基础语法与变量核心

1、var/let/const的区别?各自适用场景?(必考)

参考答案:

三者核心区别集中在变量提升、作用域、重复声明、值修改四个点:

1)var

-函数级作用域,没有块级作用域(if、for块内声明的变量外部可访问)

-存在变量提升,声明前访问会返回undefined

-允许重复声明同一变量,不会报错,容易造成变量污染

-挂载到window全局对象

场景:现在基本不用,仅老项目遗留代码会存在

2)let

-块级作用域({}内部生效)

-存在暂时性死区,声明前访问会直接报错

-不允许重复声明

-不挂载全局window

场景:变量值会被重新修改、迭代,比如循环计数器、状态变量

3)const

-和let一致,块级作用域、暂时性死区、不可重复声明

-声明时必须赋值,且基础类型值不可修改,引用类型地址不可修改

-数组、对象用const声明可以修改内部属性/元素,只是不能重新赋值

场景:常量、引用数据类型(对象、数组、函数),开发中优先使用

面试加分总结:开发原则:默认const,需要改值再用let,坚决不用var。

2、什么是暂时性死区?产生原因?

参考答案:

ES6中,用let、const声明的变量,在代码块开始到变量声明语句之前的区域,就是暂时

文档评论(0)

1亿VIP精品文档

相关文档