-
Webpack是一个打包工具,可以用它管理模块依赖
-
它可以很好地管理与打包Web开发中所用到的HTML、JS、CSS以及各种静态文件,让开发过程更高效
-
可以将脚本开发语言TS、样式开发语言LESS编译成浏览器能够识别的JS和CSS文件
3. 你都用Webpack做什么?
-
用来压缩合并CSS和JS代码,压缩图片
-
使用Babel把ES6编译成ES5
-
使用各种loader对各种资源做处理,并编译成浏览器可识别的代码
4. Webpack的核心原理是什么?
- 一切皆模块
-
JS文件可以是一个模块,CSS、图片文件也可以视作模块
-
可以将业务分割成更小的、易于管理的片段,从而达到重复利用的目的
- 按需加载
- 异步加载部分代码,实现按需加载
5. Webpack和其它打包工具相比,优点是什么?
-
具有丰富的插件,扩展性强
-
具有大量的loader,开发便捷
-
支持代码分割,实现按需加载
-
绝大部分前端资源都可以模块化
二、node.js
1. node.js是什么?
Node.js是一个Javascript运行环境(runtime)。
2. Node.js与JavaScript的区别是什么?
Javascript是一种web前端语言,主要用于web开发中,由浏览器解析执行
Node.js是一个可以快速构建网络服务及应用的平台,是用Javascript语言构建的服务平台,可用于后端建立服务器。简单的说node.js就是把浏览器的解释器封装起来作为服务器运行平台,用类似javascript的结构语法进行编程,在node.js上运行。
JavaScript
-
js的基本类型有哪些?引用类型有哪些?null和undefined的区别。
-
如何判断一个变量是Array类型?如何判断一个变量是Number类型?(都不止一种)
-
Object是引用类型嘛?引用类型和基本类型有什么区别?哪个是存在堆哪一个是存在栈上面的?
-
JS常见的dom操作api
-
解释一下事件冒泡和事件捕获
-
事件委托(手写例子),事件冒泡和捕获,如何阻止冒泡?如何组织默认事件?
-
对闭包的理解?什么时候构成闭包?闭包的实现方法?闭包的优缺点?
-
this有哪些使用场景?跟C,Java中的this有什么区别?如何改变this的值?
-
call,apply,bind
-
显示原型和隐式原型,手绘原型链,原型链是什么?为什么要有原型链
-
创建对象的多种方式
-
实现继承的多种方式和优缺点
-
new 一个对象具体做了什么
-
手写Ajax,XMLHttpRequest
-
变量提升
-
举例说明一个匿名函数的典型用例
-
指出JS的宿主对象和原生对象的区别,为什么扩展JS内置对象不是好的做法?有哪些内置对象和内置函数?
-
attribute和property的区别
-
document load和document DOMContentLoaded两个事件的区别
-
JS代码调试
-
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】