JS 中require和import总结

都是为了js模块化编程

遵循规范

  • require 是AMD规范引入方式
  • import 是es6的一个语法标准,需要转换成es5的语法才能兼容浏览器

调用时间

  • require是运行时调用,所以require理论上可以运用在代码的任何地方
  • import 是编译时调用,所以必须放在文件头部

本质

  • require 是赋值过程,其实require的结果就是对象、数字、字符串、函数等,再把require的结果赋值给某个变量
  • import 是解构过程,但是目前所有的引擎都还没用实现import,所以需要babel进行转码,把import转码为require

require/exports写法

const fs = require('fs')

exports.fs = fs
module.exports = fs

import/export写法

导入

import utils from 'utils'
import {default as newName} from 'utils'
import * as newName from 'utils'
import {isPhone} from 'utils'
import {isPhone as isPhone2} from 'utils'
import utils, {isPhone} from 'utils'

导出

export default utils
export const utils
export function utils
export { isPhone, isObject }
上一篇:支付宝用例自生成技术实践


下一篇:【阿里云智能秋招】云流团队简介&岗位一览和内推投简历