es6阮一峰-import、export学习
1、export、import命令
模块功能主要由两个命令构成:export
和import
。export
命令用于规定模块的对外接口,import
命令用于输入其他模块提供的功能。
2、整体加载
下面是一个circle.js
文件,它输出两个方法area
和circumference
。
export function area(radius) {return Math.PI * radius * radius;
}export function circumference(radius) {return 2 * Math.PI * radius;
}
加载模块
// main.jsimport { area, circumference } from './circle';console.log('圆面积:' + area(4));
console.log('圆周长:' + circumference(14));
上面写法是逐一指定要加载的方法,整体加载的写法如下。
import * as circle from './circle';console.log('圆面积:' + circle.area(4));
console.log('圆周长:' + circle.circumference(14));
注意,模块整体加载所在的那个对象(上例是circle
),应该是可以静态分析的,所以不允许运行时改变。下面的写法都是不允许的。
import * as circle from './circle';// 下面两行都是不允许的
circle.foo = 'hello';
circle.area = function () {};
3、export default命令默认输出
export default
命令用于指定模块的默认输出。显然,一个模块只能有一个默认输出,因此export default
命令只能使用一次。所以,import命令后面才不用加大括号,因为只可能唯一对应export default
命令。
4、运行时加载模块
const path = './' + fileName;
const myModual = require(path);
//import()可以放在if代码块,根据不同的情况,加载不同的模块。
if (condition) {import('moduleA').then(...);
} else {import('moduleB').then(...);
}
es6阮一峰-import、export学习相关推荐
- ES6阮一峰-----变量的解构赋值学习
1.数组的解构赋值 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 以前,为变量赋值,只能直接指定值. let a = 1; let b = ...
- es6阮一峰学习--let 和 const 命令
1.let 命令 基本用法 ES6新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. {let a = 10;var b = 1; }a // ...
- 【阮一峰博客学习记录1】追踪用户点击
使用普通异步的方式发送用户点击日志会不成功,使用同步的方式发送会导致网页延迟.所以有了这个API--navigator.sendBeacon() 作用与优势 就算是关闭浏览器的操作,都可以腾出时间进行 ...
- ES6 标准入门(第二版)阮一峰学习
现在前端环境中,每一位程序员都要求熟练ES6语法,但是大部分ES6的文档都不太完整,接下来的时间,我将为童鞋们分享阮一峰老师第二版的ES6标准.让我们一起来学习一下!!! 本期先说一下学习的目录 1: ...
- 阮一峰ES6入门读书笔记(十六):Moudle
阮一峰ES6入门读书笔记(十六):Moudle 在 ES6 之前,社区制定了一些模块加载方案,最主要的有 CommonJS 和 AMD 两种.前者用于服务器,后者用于浏览器.ES6 在语言标准的层面上 ...
- js -- ES6(一)-- 简介(根据阮一峰ES6标准入门整理)
目前正在学习ES6,根据阮一峰的ES6入门2,学到哪更新到哪里,都是基本的知识,复杂的目前还不会,涉及的代码都是亲自运行过的,若发现错误请指正. ES6 提供了许多新特性,但是并不是所有的浏览器都能够 ...
- 阮一峰es6电子书_ES6理解进阶【大前端高薪训练营】
一:面向对象:类class 面向对象三大特性之封装 封装是面向对象的重要原则,它在代码中的体现主要是以下两点: 封装整体:把对象的属性和行为封装为一个整体,其中内部成员可以分为静态成员(也叫类成员)和 ...
- AMD、CMD、CommonJS、ES6(import/export)
AMD.CMD.CommonJS.ES6(import/export) AMD.CMD.CommonJS是ES5模块化解决方案 AMD -- 异步模块 Asynchronous Module Defi ...
- JavaScript 中的 require / exports、import / export、浅谈JavaScript、ES5、ES6
Node.js 的基础教学 之 exports 和 module.exports:https://zhuanlan.zhihu.com/p/82057593 浅谈 JavaScript.ES5.ES6 ...
- 阮一峰 / ES6 数组的解构赋值
目录 一.定义 二.详情讲解 1.数组解构:数组解构时数组的元素是按次序排列的,变量的取值由它的位置决定 2.对象解构:对象解构时对象的属性没有次序,变量必须与属性同名,才能取到正确的值. 三.用途 ...
最新文章
- 腾讯 Robotics X 实验室首次「开箱」移动机器人,能走梅花桩,还能自平衡
- 远程连接——Win连接远程Linux的软件
- 洛谷P4383 林克卡特树
- burp suite 二级域名扫描插件
- 计算机四级计算机组成与接口总结,计算机等级测验四级计算机组成与接口.docx...
- 20201125:力扣第216场周赛(下)
- 工厂方法模式java实例,设计模式之工厂方法模式实例(Java)
- (转)浅说深度学习:核心概念
- java 1.8 64_JDK 1.8 64位 下载 安装 配置
- Creo 6.0软件安装教程|兼容WIN10
- Java Web-----轮播图的实现
- Hi Developer,您有一份来自华为云学院的微服务开发攻略请查收
- 【Jquery练习】tab栏切换
- ipv6如何测试服务器已经是ipv6协议,怎么测试域名是否支持ipv6
- 服务器tomcat成功运行但是无法在外网访问的解决办法
- 工具技巧和读文档 | 读函数式编程接口文档 | 匿名内部类 | lambda表达式 |IDEA
- ettercap局域网内DNS欺骗(隔壁的哥们轻一点 ...)
- 阿里云服务器上面关闭tomcat报错
- eNSP之IPsec 虚拟专用网配置
- abaqus html安装,abaqus 2016安装错误