node.js快速入门-day03

个人名片:
😊作者简介:一名大二在校生
🤡 个人主页:坠入暮云间x
🐼
座右铭:给自己一个梦想,给世界一个惊喜。
🎅**学习目标: 坚持每一次的学习打卡

文章目录

  • web服务器
    • 创建服务器的步骤?
  • 模块化
    • 什么是模块化?
    • 模块化优点?
    • 模块化分类
    • 如何加载模块化?
    • 什么是模块作用域?
    • module.exports对象
    • 模块化规范

web服务器

创建服务器的步骤?

  1. 导入http列表
  2. 创建web服务器实例
  3. 为服务器实例绑定request事件,监听客户端的请求
  4. 启动服务器
    具体代码示例如下:
//导入 http 模块
const http=require('http');
//调用http.createServer()方法,即可快速创建一个web服务器实例:
const server=http.createServer();
// 为服务器实例绑定 request 事件,即可监听客户端发送过来的网络请求:
server.on('request',function (req,res){console.log('Someone visit our web server')
})//调用服务器实例的 .listen() 方法,即可启动当前的 web 服务器实例:
server.listen(8080,function (){console.log('server sunning at http://127.0.0.1:8080')
})

模块化

什么是模块化?

模块化是指解决一个复杂问题时,自顶向下组成把系统划分成若干模块的过程。将一个大文件拆成独立并互相依赖的多个小模块

对于模块是可组合、分解和更换的单元

模块化优点?

1.提高了代码的复用性
2.提高了代码的可维护性
3.可以实现按需加载

模块化分类

1.内置模块(例如fs,http,path)
2.自定义模块(用户创建的每个js文件,都是自定义模块)
3.第三方模块

如何加载模块化?

//1.加载内置fs模块
const fs=require('fs');//加载用户的自定义模块
const custom=require('./index.js');//3.加载第三方模块
const moment=reuqire('moment')

什么是模块作用域?

在自定义模块中定义变量、方法等成员,只能在当前模块内被访问,这种模块级别的访问现在,叫做模块作用域

module.exports对象

作用:在定义模块中,可以使用module.exports对象,将模块内成员共享出去,供外界使用

使用require()方法导入自定义模块

//在自定义模块中 module.exports ={}
const age=20;
//先module.exports对象上挂载username属性
module.exports.username='zs';
//先module.exports对象上挂载sayHello方法
module.exports.sayHello=function(){console.log('Hello');
}
module.exports.age=age
const m=require('./09自定义模块')console.log(m);

在这里插入图片描述

模块化规范

CommonJS规定了模块特性和各模块之间的相互依赖
CommonJS规定:
1.每个模块内部,module变量代表当前模块
2.module变量是一个对象,它的exports属性是对外的接口
3.加在某个模块,其实是加载该模块的属性

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/751287.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣hot100:34. 在排序数组中查找元素的第一个和最后一个位置(二分查找的理解)

我们知道使用二分查找能找到值所在的位置。假如我们在找到值后仍然不断的更新指针会发生什么?我们可以利用这一点来找到最左边的以及最右边的值。 如果当nums[mid]target时,使得 rightmid-1,那么最终会使得target在right的右边。 如果当nums[…

海外媒体宣发套餐推广攻略实现品牌全球化-华媒舍

如今,在全球经济一体化的浪潮下,品牌全球化已成为企业成功的重要因素之一。海外市场作为一个巨大而具有潜力的机会,吸引着越来越多的企业前往探索。而在海外市场的推广过程中,海外媒体宣发套餐成为了重要的推广方式之一。本文将为…

Linux系统优化及性能调优

目录 一、基本优化 1. SELinux和防火墙优化 1.1 selinux概述 1.2 selinux三种工作模式 1.3 切换selinux模式 1.4 防火墙概述 1.5 firewalld管理工具 2. 自启动服务优化 2.1 Systemd 2.2 SysVinit 3. 禁用超级管理员 4. 普通用户提权 5. 使用国内yum源 5.1 配置阿…

量化交易入门(一)学习量化交易需要掌握哪些知识

学习量化(Quantitative Analysis),特别是在金融领域的量化分析或量化交易,需要掌握以下几个方面的知识: 数学和统计学:高等数学(微积分、线性代数等)、概率论与数理统计是量化分析的…

【S5PV210_视频编解码项目】裸机开发:实现按键的外部中断处理

加粗样式本文所作内容: 基于S5PV210芯片实现按键的外部中断处理程序,搭建中断处理流程框架 S5PV210对于中断处理的操作流程 1 外部中断得到触发: 1)外部中断在初始化阶段得到使能 2)外界达到了外部中断的触发条件 …

24考研数学最大教训❗️660/880过时了?

我没看错吧,说660题和880题过时了? 660题和880题好好用,这俩很经典不会过时。 660题是客观题训练必刷的一本题集,而880是强化阶段非常好的一本综合性题集。我本身在考研的时候使用的也是这两本题集,所以对这两本题集…

如何学习一个大型分布式Java项目

前言 很多同学在没有实习经验的时候看到一个多模块分布式项目总是有一种老虎吃天的无力感,就像我刚毕业去到公司接触项目的时候一样,模块多的夸张,想学都不知道从哪开始学,那么我们拿到一份代码后如何从头开始学习一个新项目呢。…

pyinstaller使用笔记

1. 简介 pyinstaller是一个第三方库,它能够在Windows、Linux、 Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包, Python 程序可以在没有安装 Python 的环境中运行,也可以作为一个 独立文件方便传递和管理。 PyIns…

Oracle Primavera Analytics 是什么,与P6的关系?

前言 Oracle Primavera P6 Analytics 是与P6有关的一个相对较新的模块,Primavera 用户社区在很大程度上尚未对其进行探索。 那么它到底有什么作用呢? 通过了解得知它旨在通过深入了解组织的项目组合绩效,帮助高级管理层对其项目组合做出更好…

「Linux系列」Linux 系统目录结构/忘记密码解决方法

文章目录 一、Linux 系统目录结构Linux系统目录结构的概念案例 二、Linux 忘记密码解决方法方法一:使用root用户重置密码方法二:使用单用户模式重置密码方法三:使用恢复模式或救援模式案例:使用CentOS的救援模式重置密码 三、相关…

PE文件格式知识点汇总

简单概述:可执行文件之所以被操作系统加载且运行,是因为它们遵循相同的规范,而这个规范正是PE文件格式所确定。 1、PE文件格式的定义 PE文件格式:PE(Portable Executable)是win32平台下可执行文件遵守的数…

Python进阶学习(6)异常

文章目录 异常1.异常的定义2.异常错误3.异常处理(捕捉异常)4.assert断言5. 定义异常 异常 1.异常的定义 什么是异常:报错 也可以去链接资源访问某个网站时,中断程序,也叫异常 捕捉异常:因为我们在程序编…

MySQL | 库的操作 | 表的操作

目录 1. 库的操作 1.1. 创建数据库 1.2. 字符集和校验规则 1.2.1. 查看系统默认字符集以及校验规则 1.2.2. 查看数据库支持的字符集 1.2.3. 查看数据库支持的字符校验规则 2. 操作数据库 2.1. 查看数据库 2.2. 显示创建语句 2.3. 修改数据库 2.4. 数据库的删除 2.4.…

维基百科推广秘诀13个方法助你成为行业领导者-华媒舍

维基百科(Wikipedia)作为全球最大、最权威的在线百科全书,拥有海量的知识内容,被广大用户广泛使用。对于任何一个领域的从业者来说,建立自己的维基百科页面,无疑是提升行业影响力的重要手段。本文将向您介绍…

Linux学习(4)——使用编辑器

1.gedit编辑器 简单易懂,依赖图形界面。可以使用ctrlc ctrlv等快捷键,ctrls进行保存,与windows系统中相类似。 2.vi/vim编辑器 vi/vim可以直接通过控制台的终端完成文本的编辑,不依赖图形界面,使用范围更广。它的编辑…

DataX-数据迁移Oracle到Mysql-ETL工具

一、安装 https://github.com/WeiYe-Jing/datax-web/blob/master/doc/datax-web/datax-web-deploy.md 1、直接下载DataX工具包:DataX下载地址 下载后解压至本地某个目录,进入bin目录,即可运行同步作业: $ cd {YOUR_DATAX_HOME}/…

Redis数据结构对象之字符串对象

字符串对象 字符串对象的编码可以是int、raw或者embstr 如果一个字符串对象保存的是整数值,并且这个整数值可以用long类型来表示,那么字符串对象会将整数值保存在字符串对象结构的ptr属性里面(将void *转换成long),并且将字符串对象的编码设…

为啥这么做实现不了优雅关闭服务,gin 项目

所谓的优雅关闭服务就是 在关闭服务时,服务不再监听新的请求,并且可以将之前的请求处理完毕。 细节请看 专栏博客Gin项目实战09-优雅关闭服务

【Cute】MMA抽象代码理解 c2d9bff3d88846eb8c523fb722166bc9

【Cute】MMA抽象代码理解 导读: cute 之 Layoutcute Layout 的代数和几何解释cute 之 Tensorcute 之 MMA抽象cute 之 简单GEMM实现 阅读本文前建议先读上面reed大神的数篇文章,文本逻辑主要是针对具体的代码,记录一下自己学习过程中的理解…

Atlas200板卡部署车道线

本博客包含推理的准备和部署代码,一步步实现部署。 这个运行时生成的一个batch的数据,NCHW,就是输入的N,单图片推理就是1,把里面的数量改成1,但是你可以多生成一些bin图片放到校准文件夹中,更改输出文件名…