博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
EcmaScript6 Model 语法
阅读量:7056 次
发布时间:2019-06-28

本文共 869 字,大约阅读时间需要 2 分钟。

  hot3.png

使用export命令定义了模块的对外接口以后,其他 JS 文件就可以通过import命令加载这个模块。

// main.jsimport {firstName, lastName, year} from './profile';function setName(element) {  element.textContent = firstName + ' ' + lastName;}

import命令具有提升效果,会提升到整个模块的头部,首先执行。

由于import是静态执行,所以不能使用表达式和变量,这些只有在运行时才能得到结果的语法结构。

// 报错import { 'f' + 'oo' } from 'my_module';// 报错let module = 'my_module';import { foo } from module;// 报错if (x === 1) {  import { foo } from 'module1';} else {  import { foo } from 'module2';}

模块的整体加载

逐一加载

// main.jsimport { area, circumference } from './circle';console.log('圆面积:' + area(4));console.log('圆周长:' + circumference(14));

整体加载

import * as circle from './circle';// 下面两行都是不允许的circle.foo = 'hello';circle.area = function () {};

注意,模块整体加载所在的那个对象(上例是circle),应该是可以静态分析的,所以不允许运行时改变。

export default 命令

使用这个命令,其他模块加载该模块时,import命令可以为该匿名函数指定任意名字。

转载于:https://my.oschina.net/lemos/blog/880057

你可能感兴趣的文章
RedHat宣布支持Azure、.Net Core 2.0和SQL Server 2017
查看>>
苹果发布Core ML 2
查看>>
iOS业务组件化框架 Axe
查看>>
在敏捷中应用测试驱动开发
查看>>
IBM发布Open Liberty 18.0.0.4,支持MicroProfile 2.1和反应性扩展框架
查看>>
听云CTO访谈:解读现代应用性能管理(APM)技术
查看>>
Java EE Security API(JSR-375)获得通过
查看>>
Linux学习笔记
查看>>
Visual Studio 2017 15.9预览版3支持ARM64 for UWP
查看>>
GitHub推出Scientist,帮助开发者重构关键路径代码
查看>>
跨平台移动应用开发的优势与不足
查看>>
Java EE守护者将推动Jakarta EE的发展
查看>>
Apache Kylin在绿城客户画像系统中的实践
查看>>
通过jsonp获取json数据--实现AJAX跨域请求
查看>>
用AI种的一手好黄瓜!独家揭秘腾讯AI+农业技术实力
查看>>
Google 如何设计与构建超大规模的软件系统
查看>>
使用gRPC构建真实世界的微服务
查看>>
访谈:关于持续敏捷交付与服务矩阵
查看>>
Istio v1.0服务网格发布,各特性已生产就绪
查看>>
建立自组织敏捷团队
查看>>