Bootstrap

前端面试 - webpack考点

一、webpack

1. vue+webpack 和 vue-cli脚手架 的区别

(1)vue-cli脚手架 是基于Webpack构建的vue项目框架,已经配置好了基本的Webpack打包规则,但内部配置我们无法看到

(2)有学过webpack,但实际做项目时,还是直接用vue-cli脚手架构建项目

2. 什么是Webpack/为什么使用Webpack?

  1. Webpack是一个打包工具,可以用它管理模块依赖
  2. 它可以很好地管理与打包Web开发中所用到的HTML、JS、CSS以及各种静态文件,让开发过程更高效
  3. 可以将脚本开发语言TS、样式开发语言LESS编译成浏览器能够识别的JS和CSS文件

3. 你都用Webpack做什么?

  1. 用来压缩合并CSS和JS代码,压缩图片
  2. 使用Babel把ES6编译成ES5
  3. 使用各种loader对各种资源做处理,并编译成浏览器可识别的代码

4. Webpack的核心原理是什么?

  1. 一切皆模块
    • JS文件可以是一个模块,CSS、图片文件也可以视作模块
    • 可以将业务分割成更小的、易于管理的片段,从而达到重复利用的目的
  2. 按需加载
    • 异步加载部分代码,实现按需加载

5. Webpack和其它打包工具相比,优点是什么?

  1. 具有丰富的插件,扩展性强
  2. 具有大量的loader,开发便捷
  3. 支持代码分割,实现按需加载
  4. 绝大部分前端资源都可以模块化

二、node.js

1. node.js是什么?

Node.js是一个Javascript运行环境(runtime)。

2. Node.js与JavaScript的区别是什么?

Javascript是一种web前端语言,主要用于web开发中,由浏览器解析执行    

Node.js是一个可以快速构建网络服务及应用的平台,是用Javascript语言构建的服务平台,可用于后端建立服务器。简单的说node.js就是把浏览器的解释器封装起来作为服务器运行平台,用类似javascript的结构语法进行编程,在node.js上运行。

3. Node.js的优点?Node.js的缺点?

 优点:1.事件驱动2.异步编程3.非阻塞模式的IO4.轻量高效缺点:1.可靠性低2.单进程,单线程,只支持单核cpu,不能充分的利用多核cpu服务器。一旦这个进程崩掉,那么整个web服务就崩掉了。

4. Node.js适用场景?Node.js不适用的场景?

适用场景:1.JSON APIL ——构建一个Rest/JSON API服务,node.js可以充分发挥其非堵塞IO模型以及javascript对JSON的功能支持2.单页面、多Ajax请求应用——前端有大量的异步请求,需要服务器后端有极高的响应速度3.基于node.js开发Unix命令行工具——node.js可以大量产生子进程,并以流的方式输出4.流式数据——传统的web应用,通常会将HTTP 请求喝响应看成是原子事件。而node.js会充分利用流式数据这个特点,构建非常酷的应用

不适用场景:cpu使用率较重、io使用率较轻的应用

;