- 1
- 0
- 约6.11千字
- 约 9页
- 2026-10-13 发布于河北
- 举报
JS视频面试高频题及详细答案(实战口语版)
一、JS基础核心题
1、说说var、let、const的区别?
参考答案:
首先是变量提升不一样,var存在变量提升,声明前调用会返回undefined;let和const没有变量提升,声明前使用会直接报错,也就是暂时性死区。
其次是作用域不同,var只有全局作用域和函数作用域,没有块级作用域,for循环嵌套很容易出现变量泄露的问题;let和const支持块级作用域,大括号内部声明的变量,外部访问不到,解决了循环变量污染的问题。
最后是赋值规则,var和let可以重复赋值、可修改;const声明的是常量,一旦赋值不能修改,而且必须初始化。另外要注意,const声明引用类型(对象、数组)时,内部属性可以修改,只是不能重新赋值。
2、JS基本数据类型有哪些?和引用类型的区别?
参考答案:
基本数据类型有7种:string、number、boolean、undefined、null、symbol、bigInt。
引用类型主要是:Object、Array、Function、Date、RegExp等。
核心区别有两点:
第一是存储方式,基本类型的值直接存在栈内存中,赋值是完整拷贝一份值,两个变量互不影响;引用类型栈内存存的是地址,真实数据存在堆内存里,赋值只是拷贝地址,两个变量指向同一个数据,修改一个
原创力文档

文档评论(0)