小程序
import
require
import和require的区别
node编程中最重要的思想就是模块化,import和require都是被模块化所使用。
遵循规范
require 是 AMD规范引入方式
import是es6的一个语法标准,如果要兼容浏览器的话必须转化成es5的语法
调用时间
require是运行时调用,所以require理论上可以运用在代码的任何地方
import是编译时调用,所以必须放在文件开头
本质
require是赋值过程,其实require的结果就是对象、数字、字符串、函数等,再把require的结果赋值给某个变量
import是解构过程,但是目前所有的引擎都还没有实现import,我们在node中使用babel支持ES6,也仅仅是将ES6转码为ES5再执行,import语法会被转码为require
来自 <https://www.imooc.com/wenda/detail/397041>
也可以这么说
require和import没有什么区别,这是两种js模块化规范而已,如果你的小程序用到了babel编译,两种写法均可,如果没有,那就用require语句,这是nodejs原生支持的
1.ES2015 import 语句
import App from './App';import 'moment';
2.CommonJS require() 语句(nodejs支持)
const App = require('./App');require('moment')
3.AMD define 和 require 语句(requirejs支持)
requirejs是一个早些时候实现js模块化的库,现在基本没怎么用了,大概是这种写法吧
require(['jquery'], function(Lib){ // do sth});
网友评论