Node.js 初步学习总结
Node.js是一个基于Goolgle所开发的Chrome浏览器引擎的JavaScript运行环境,简单的说,它就是运行在服务端的JavaScript,使用了很多先进的技术,其中包括事件驱动,非阻塞式I/O模型。
一、Node.js的包管理
Node.js的模块加载机制可以让开发时更好地划分程序的功能,更好地做到代码解耦,同时利于进行模块开发,Node.js的管理工具NPM
可以很方便地下载使用第三方模块,简化开发工作,提高项目开发效率。
1、npm常用命令:
命令 | 作用 |
---|---|
npm -v、npm version | 查看npm安装版本 |
npm init | 生成项目描述文件 package.json |
npm install | 安装包命令 |
npm update | 包更新 |
npm uninstall | 包卸载 |
npm search | 搜索包 |
npm list | 查看已安装的各模块之间的依赖关系 |
npm root | 查看模块安装路径 |
2、模块加载原理和加载方式
Node.js中可以通过require方法导入模块,exports导出模块。
导入模块示例:
const http = require('http');
http.createServer {//your code
}
如果想要与其他模块共享自己的方法或属性,需要使用exports导出模块:
const util = {//your code
};
module.exports = util;
3、Node.js核心模块
Node.js的核心模块主要有http,fs,url,querystring模块,关于这些模块的详情和其他模块的信息,可参考官方文档:
Node.js中文网
二、文件系统
Node.js在操作文件时使用的是fs(File System)模块。
Node.js在文件模块中只有四个类,分别是 fs.FSWatcher,fs.ReadStream,fs.Stats 和 fs.WriteStream。fs.ReadStream 和 fs.WriteStream分别是读取流和写入流,fs.FSWatcher 和 fs.Stats可以获取文件的相关信息。
更多信息看文档:fs文件系统
三、Node.js网络开发
Node.js提供了net,http,dgram模块,分别用来实现TCP,HTTP,UDP的通信。
搭建网络通信过程可参考:nodejs深入学(8)网络编程
四、Node.js连接Mysql
Node.js连接Mysql使用的是mysql模块,使用这个模块前需要通过npm来安装:
npm install mysql
mysql模块通过createConnection()方法创建连接,并使用query()方法来执行sql语句:
//引入Mysql模块
var mysql = require('mysql');
//创建连接
var connection = mysql.createConnection({host : 'localhost',user : 'root',password : '123456',database : 'test'
});//连接mysql
connection.connect();
//查询数据
connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) {if (error) throw error;console.log('The solution is: ', results[0].solution);
});
执行会得到如下结果:
The solution is: 2
Node.js 初步学习总结相关推荐
- Node.js+mongodb 学习笔记(三)swagger注释+用户管理
Node.js+mongodb 学习笔记(三)swagger注释+用户管理 Node.js+mongodb 学习笔记(三)swagger注释+用户管理 用户注册 用户登录 修改密码 swagger注释 ...
- 【特别推荐】Node.js 中文学习资料和教程导航
这篇文章来自 Github 上的一位开发者收集整理的 Node.js 中文学习资料和教程导航.Node 是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念,它的目标是帮助程 ...
- 微信小程序Node.js+uniapp学习计划与日程管理系统app
本学习计划与日程管理系统,主要用来为用户提供自主计划学习的主要功能,主要实现首页.计划学习页.日程安排页.个人中心页这四大页面,相对应的功能如下分析: (1) 首页:该页面主要由搜索.论坛发表. ...
- node.js基础学习
node.js简介 Node.js能够让javascript在服务端运行 1.node的特性 异步I/O 说到异步I/O,就不得不说一下I/O,他们分别是input和output的缩写,也就是输入.输 ...
- Node.js 寒假学习日志之Node.js
学习计划 ES6 Node.js VUE.JS Uni-App 学习日志之Node.js 2021/1/22 P3 http模块(http/s) //引入http(s)模块 PS:http与https ...
- node.js初步探究
node.js 探究之路 1.mac下安装node.js (1).升级系统到最新 (2).升级xcode xcode-select -p //检查是否安装xcode,如果出现路径,说明已安装xcode ...
- Node.js基础学习(第二幕)
Node.js的模块系统 Node.js中使用"Module(模块)"来规划不同的功能对象. 模块的分类: (1)核心模块--nodejs的内置模块 (2)第三方模 ...
- Node.js的学习--使用cheerio抓取网页数据
打算要写一个公开课网站,缺少数据,就决定去网易公开课去抓取一些数据. 前一阵子看过一段时间的Node.js,而且Node.js也比较适合做这个事情,就打算用Node.js去抓取数据. 关键是抓取到网页 ...
- node.js初步认识
nodejs实际上就是在,nodejs是单线程的.不会被IO阻塞,网页里面随便输入路径都是主路径,需要做判断,跟老牌tomcat等不能比,不过node强在年轻,有他的优势.虽然就一幅图,不过也是自己学 ...
最新文章
- html5+开发window桌面图标,js模仿windows桌面图标排列算法具体实现(附图)
- 天翼云从业认证(1.3)了解数据库的概念、SQL、关系型数据库、大数据和 NoSQL 数据库
- Ubuntu Linux 下文件名乱码(无效的编码)的快速解决办法
- Java多线程之JUC包:Semaphore源码学习笔记
- 智慧交通day02-车流量检测实现09:SORT/deepSORT
- pythonyaml参数_使用python检查yaml配置文件是否符合要求
- live555抓包实例
- dubbo发布webservice服务
- CentOS 7.4安装postgresql96
- 薄板开孔建模计算的ansys命令流
- stm32蜂鸣器程序
- 掌握业务流程图符号,提高业绩不再没有头绪
- 基于软件仿真的PLC系统测试技术
- Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少(蓝桥基础实战)
- android 自定义相册选择,Android图片选择器,支持拍照、从相册选择、裁剪、自定义主题...
- node打包时遇到的问题
- 不想将就,所以竭尽所能。
- 408计算机网络04-HTTP 长连接短连接使用场景是什么
- 天啦,从Mongo到ClickHouse我到底经历了什么?
- alpha因子常见问题_多因子模型是否真的可以带来阿尔法(alpha)?