前端面试题
JavaScript
基础知识:
1、数据类型
- 基础数据类型:Number String Boolean Null Undefined Symbol BigInt
- 引用数据类型:Object Array Function Date
2、作用域与闭包
- 作用域:变量的可访问范围。分为全局作用域、函数作用域、块级作用域(let和const)。
- 闭包:函数可以“记住”并访问定义时的作用域。
3、this
- this指向调用函数的上下文。
- 在函数中this指向全局对象(浏览器中是window),在对象方法中指向该对象,箭头函数没有自己的this,它继承自外部作用域。
4、原型与继承
- 每个对象都有一个_proto_属性,指向其构造函数的原型对象。通过原型链实现继承。
5、事件循环与异步编程
- JavaScript是单线程的,通过事件循环处理异步操作。
- 异步操作:回调函数、Promise、async/await。
6、函数
- 函数声明与函数表达式:声明式函数有提升,表达式函数没有。
- 箭头函数:简化函数的写法,且没有this。
7、数组与对象
- 数组:常用的方法包括map、filter、reduce等。
- 对象:键值对结构,可以通过dot notation或brecket notation访问。
8、ES6+的新特性
- 解构赋值:方便的从数据或对象中提取值。
- 模版字符串:支持内嵌表达式和多行字符串。
- 模块化:import和export语法。
9、错误处理
- 使用try...catch捕获错误。
- throw自定义错误。

浙公网安备 33010602011771号