Chinaunix首页 | 论坛 | 博客
  • 博客访问: 389996
  • 博文数量: 273
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1430
  • 用 户 组: 普通用户
  • 注册时间: 2018-02-02 15:57
文章分类

全部博文(273)

文章存档

2018年(273)

我的朋友

分类: Html/Css

2018-07-10 15:07:11

现在  JavaScript 模块。本文将介绍如何使用 JS 模块,如何有效地部署,以及 Chrome 团队如何使 JS 模块在未来变得更好用。

什么是 JS 模块?

JS 模块(也称为“ES 模块”或“ECMAScript模块”)是 ES6 中一项非常重要的语言特性。在此以前,你可能使用过用户级别的 JavaScript 模块系统,比如,或者是 ,或者其他别的实现。所有的模块系统都包含一个共同点:允许导入和导出内容。

现在,JavaScript 拥有标准化的语法来完成这些事。在一个模块中,可以使用 export 关键字来导出任何内容,比如一个 const ,一个 function 或任何其他变量绑定或是声明。只需在变量语句或声明前面加上 export 即可:

//  lib.mjs export const repeat = (string) => `${string} ${string}`; export function shout(string) { return `${string.toUpperCase()}!`;
} 复制代码

然后可以使用 import 关键字从另一个模块导入模块。在这里,我们从 lib 模块导入 repeat 和 shout 函数,并在 main 模块中使用它们 :

//  main.mjs import {repeat, shout} from './lib.mjs';
repeat('hello'); // → 'hello hello' shout('Modules in action'); // → 'MODULES IN ACTION!' 复制代码

还也可以从模块中导出 default 值:

//  lib.mjs export default function(string) { return `${string.toUpperCase()}!`;
} 复制代码

这时候 default 导出可以使用任何名称导入:

//  main.mjs import shout from './lib.mjs'; //     ^^^^^ 复制代码

模块与经典脚本有点不太一样:

  • 模块默认开启严格模式
  • 模块中不支持 HTML 注释语法。
// Don’t use HTML-style comment syntax in JavaScript! const x = 42; 
            
阅读(733) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~