美文网首页
require 和 import 的区别

require 和 import 的区别

作者: CjLilard | 来源:发表于2019-05-30 14:38 被阅读0次

首先主要体现在他们的用法上,

require是CommonJS的语法,它的模块是对象,导入时实际倒入一个对象,然后再根据对象去查找对应的属性。所以会可能加载一些模块内不被用到的方法或其他

let { stat, exists, readFile } = require('fs');

// 等同于  

let _fs = require('fs');

let stat = _fs.stat;

这里涉及到一个概念,叫‘运行时加载‘,就是说,只有在代码真正运行的时候才会去加载对应需要的东西,所以不能做到编译时就把想加载的模块加载进来,即不能做到编译时静态化。

而import是属于ES6内的,es6默认使用严格模式,模块内的变量在外部是无法使用的,必须通过exports导出。.ES6 模块的设计思想,是尽量的静态化,使得编译时就能确定模块的依赖关系,以及输入和输出的变量。

export var firstName = 'Michael';

export {firstName, lastName, year};

export function multiply(x, y) {

  return x * y;

}; //导出函数或者类

export {

v1 as streamV1,

v2 as streamV2,

v2 as streamLatestVersion

}; //用as重命名

与之对应的是需要import引入

import {firstName, lastName, year} from './profile';

import { lastName as surname } from './profile'; //重命名

import * as circle from './circle'; //用星号代表所有

import命令接受一对大括号,里面指定要从其他模块导入的变量名,必须与被导入模块(profile.js)对外接口的名称相同。

适用场景就是按需加载和条件加载

相关文章

  • require,import ,export default,m

    module.exports和exports区别 import和require的区别 import和require...

  • 2、require 和 import 的区别?

    【转载出处】 require 和 import 的区别? 谈谈import和require的区别 1⃣️、遵循的规...

  • require和import区别

    使用形式不一样 import 还有一个重要的区别import是解析时候加载的,require是运行时加载,requ...

  • import和require区别

    在学习过程发现项目代码中存在两种引入方式,便各方查了两种的区别(一下内容为自我学习笔记,如有不当还请指教): 1、...

  • import 和 require区别

    ES6之前出现了JS模块加载的法案,最主要是CommonJS和AMD规范。CommonJS前者主要应用于服务器,实...

  • require和import区别

    遵循的模块化规范不一样 模块化规范:即为 JavaScript 提供一种模块编写、模块依赖和模块运行的方案。谁让最...

  • import 和 require区别

    import和require分别是不同模块化规范下引入模块的语句。 1.时间 年份出处require/exprot...

  • require和import区别

    node编程中最重要的思想就是模块化,import和require都是被模块化所使用。 遵循规范–require ...

  • import和require的区别

  • import和require的区别

    node编程中最重要的思想就是模块化,import和require都是被模块化所使用。 遵循规范 require...

网友评论

      本文标题:require 和 import 的区别

      本文链接:https://www.haomeiwen.com/subject/uuxvtctx.html