关于Node.js的初步使用(导出和导入语法)

关于项目部分的文件夹搭建如下:

项目准备

arr.js是封装了一个数组求和的方法,并且利用commonJS方法导出

// 封装了一个求和函数
const getArraySum = (arr) => arr.reduce((sum, item) => sum += item, 0);
module.exports = {
   getArraySum,
};

str.js封装的是一个判断用户名和密码的长度,并且利用commonJS方法导出

// 封装了一个判断用户名和密码的长度函数
const checkUserName = (username) => {
    return username.length >= 8;
};
const checkPassword = (password) => {
    return password.length >= 6;
};
module.exports = {
    checkUser: checkUserName,
    checkPwd: checkPassword,
};

新建一个index.js文件用来作为utils.js工具包的唯一出口(集中所有工具模块的方法,统一向外导出),代码如下:

// 本文件是utils.js工具包的唯一出口(集中所有工具模块的方法,统一向外导出)
const {getArraySum } = require('./lib/arr.js')
const {checkUser,checkPwd }= require('./lib/str.js')

// 统一导出所有函数
module.exports = {
	getArraySum,
	checkUser,
	checkPwd
}

最后新建一个server.js文件用来导入在utils中的lib文件夹封装的两个方法

// 导入软件包,使用utils中的封装的工具函数
// ./utils是一个文件夹
 const obj = require('./utils');
 console.log(obj);
const result = obj.getArraySum([10, 20, 30]);
console.log(result);

打开终端

由于我的终端路径只到node文件夹,而我编写的代码都在js文件夹内,所以此次node命令书写为:node js/server.js ,运行结果如下

node的导入导出方法还有ECMAScript的默认导入导出以及命名导入导出,感兴趣的朋友可以尝试一下,语法格式大概如下,但是和上面搭建的项目结构有所不同,建议重新构建一个文件夹使用,或者找准文件路径也可以照常使用。

// const baseURL = 'http://hmajax.itheima.net';
// const getArraySum = (arr) => arr.reduce((sum, item) => sum += item, 0);

// commonJS导出
// module.exports = {
//     url: baseURL,
//     arraySum: getArraySum,
// };

// 默认导出
// export default {
// 	url: baseURL,
// 	arraySum: getArraySum,
// };

// // 命名导出
// export const baseURL = 'http://hmajax.itheima.net';
// export const getArraySum = (arr) => arr.reduce((sum, item) => sum += item, 0);

// const obj = require('./utils.js');
// console.log(obj);
// const result = obj.arraySum([5, 1, 2, 3]);
// console.log(result);

// // 默认导入模块
// import obj from './utils.js';
// console.log(obj);
// const result = obj.arraySum([10, 20, 30]);
// console.log(result);

// 命名导入
// import { baseURL, getArraySum } from './utils.js';

// console.log(baseURL);
// console.log(getArraySum);
//  const result = getArraySum([10, 20, 30]);
//  console.log(result);

以上三种node的导入导出方法,commonJS主要是在Node.js环境中使用的,EMCAScript的导入导出方法用于前端工程化(写前端主要推荐这一种写法)。 EMCAScript的两种导入导出方法的主要区别是在于命名导入导出可以按需求导入导出。

  • 16
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值