require
是这个老一辈码农们在es6规范之前的规范中使用的命令,之前的规范有CommonJS规范、AMD、CMD、还有一个UMD,那为什么是require
不是别的呢,因为方便在node中使用。
好的,这又引入了一个问题,Q1CommonJS规范、AMD、CMD、还有一个UMD他们的区别又是什么,说实话我接在他们之后才接触的前端,我也没怎么用过,也没有什么话语权,只能上网翻看其他文章粗略理解记忆,对这个概念先保持不陌生的状态。(有的面试官还爱问,举个例子,你没用过html前几个版本,人家问你Html5的优点,你没用过老版本,你怎么说,说不出来能说明你h5用的不熟?),言归正传,require和import有几点差异:
require
使用于CommonJS规范,import使用于ES6规范,两者区别实质上是两种规范的区别:
a = require(b)
,b会被a缓存。import a from b
a是只读变量,不论基本数据类型还是复杂数据类型。