模块与回调函数(node基础

个人学习笔记(在各个大佬博客的指导下)
基础简单知识~

1、模块

模块是node.js应用程序基本组成部分,模块和文件是一 一对应的关系,一个node.js文件就是一个模块,加载一个模块就是加载对应的一个模块文件。

require的参数有两种,一种是文件路径,基于当前脚本所在目录,像require(’./tools’)这样的;另一种是已安装的模块,可以直接引用,比如加载核心模块http,代码为require(‘http’)

举个例子,用test文件引用外部模块tools(自定义模块)

test文件:

// 这是test文件
const tool = require('./tools');

console.log(tool.sum(['hello', 'world']));

console.log(tool.add(4,8));

tools文件:

//这是tools文件
var sum = function (string) {
    return string;
}

var add = function(m,n){
    return `m + n = ${m+n}`;
}

module.exports.sum = sum;
module.exports.add = add;

执行结果:
在这里插入图片描述
备忘录:不建议同时使用exports和module.exports向外暴露属性或方法,因为exports仅仅是module.exports的一个引用

2、回调函数

在某乎看到了一个关于回调函数的理解,我只想说:妙啊啊啊。膜拜大佬orz
在这里插入图片描述
node.js异步编程的直接体现就是回调。比如文件的读取就是一个异步操作,在文件读取完成后,将文件内容作为回调函数的参数返回,这样代码执行时就没有阻塞或者等待文件I/O操作。

关于异步读取文件的,推荐看看一个巨佬的这个博文http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript.html

一个简单的回调函数:

function callback(name,phone){
    name(phone);
}

function bai(phone){
    console.log(phone);
}

callback(bai, '20200528');

扩展小知识:

node的运行环境是单线程的,如果出现没有捕获的异常被抛出,就会引起整个进程的崩溃。一般来说,node捕获异常的几种常见方式如下:

1、try······catch结构,最常见的捕获异常方式,但无法处理异步执行机制

2、回调函数,将错误对象传递给回调函数,由回调函数发出错误信息

3、通过EventEmitter的接口发出一个error事件

4、通过promise方式

参考博客:https://javascript.ruanyifeng.com/nodejs/basic.html#toc6

如有不足,欢迎指出
(我只是一个小菜鸟,需要大佬们的指点

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值