JavaScrip中module的输入与输出(import&exports)

今天在codecademy上面学完了JavaScript关于模块(Module)的那一章,小做总结:

对Module进行输出主要有两种方式,一种以node.js的module.exports,另外一种是ES6新的一种syntax,这里面又分default export/import 和 named export/import。

我们先说如何使用module.exports

  1. 创建一个表示这个模块的对象
  2. 添加方法或者属性到这个对象中
  3. 输出对象

实现代码如下:

let Menu = {}; /** create an object to represent the module */
Menu.food = 'Lobster'; /** Add property to the module object */

module.exports = Menu;

第二种方法是无需包装,直接在module.exports后面写这个对象的方法,或者里面的属性。
实现代码如下:

module.exports = {
	food: 'Lobster',
	getFood: function() {
		return this.food;
	}
};

这两种方法效果是一样的。接下来我们讲import。import其实也十分简单,主要步骤为:

  1. 用require()来确定需要引入的module,并且将它的值赋予给一个变量
  2. 然后就可以在program中使用这个module了

代码如下:

const Menu = require(./menu.js)

注意: 这里const的名字Menu可以为任何你想选的名字。.js的文件后缀可以省略。

用ES6的syntax来对module进行导入和导出:
(注意,ES6对很多浏览器不一定兼容,需考虑用npm转换成ES5的问题)

  1. export default
    代码很简单,如下:
let Menu = {};
export default Menu;

导入的方式:

import Menu from "./menu";
  1. Named Exports
    顾名思义,就是直接通过变量名直接导出。
let people = "";
function getAge() {};
export {people, getAge};

引入的步骤如下:

import {people, getAge} from "./people";

如果这两个变量有哪个你不想导入,直接无视即可,括号内填你想引入的变量就好了。

本人尚在JS学习的初级阶段,如有不对,请多多指教。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值