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 初步学习总结相关推荐

  1. Node.js+mongodb 学习笔记(三)swagger注释+用户管理

    Node.js+mongodb 学习笔记(三)swagger注释+用户管理 Node.js+mongodb 学习笔记(三)swagger注释+用户管理 用户注册 用户登录 修改密码 swagger注释 ...

  2. 【特别推荐】Node.js 中文学习资料和教程导航

    这篇文章来自 Github 上的一位开发者收集整理的 Node.js 中文学习资料和教程导航.Node 是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念,它的目标是帮助程 ...

  3. 微信小程序Node.js+uniapp学习计划与日程管理系统app

    本学习计划与日程管理系统,主要用来为用户提供自主计划学习的主要功能,主要实现首页.计划学习页.日程安排页.个人中心页这四大页面,相对应的功能如下分析: (1)    首页:该页面主要由搜索.论坛发表. ...

  4. node.js基础学习

    node.js简介 Node.js能够让javascript在服务端运行 1.node的特性 异步I/O 说到异步I/O,就不得不说一下I/O,他们分别是input和output的缩写,也就是输入.输 ...

  5. 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 ...

  6. node.js初步探究

    node.js 探究之路 1.mac下安装node.js (1).升级系统到最新 (2).升级xcode xcode-select -p //检查是否安装xcode,如果出现路径,说明已安装xcode ...

  7. Node.js基础学习(第二幕)

    Node.js的模块系统     Node.js中使用"Module(模块)"来规划不同的功能对象.   模块的分类:  (1)核心模块--nodejs的内置模块  (2)第三方模 ...

  8. Node.js的学习--使用cheerio抓取网页数据

    打算要写一个公开课网站,缺少数据,就决定去网易公开课去抓取一些数据. 前一阵子看过一段时间的Node.js,而且Node.js也比较适合做这个事情,就打算用Node.js去抓取数据. 关键是抓取到网页 ...

  9. node.js初步认识

    nodejs实际上就是在,nodejs是单线程的.不会被IO阻塞,网页里面随便输入路径都是主路径,需要做判断,跟老牌tomcat等不能比,不过node强在年轻,有他的优势.虽然就一幅图,不过也是自己学 ...

最新文章

  1. html5+开发window桌面图标,js模仿windows桌面图标排列算法具体实现(附图)
  2. 天翼云从业认证(1.3)了解数据库的概念、SQL、关系型数据库、大数据和 NoSQL 数据库
  3. Ubuntu Linux 下文件名乱码(无效的编码)的快速解决办法
  4. Java多线程之JUC包:Semaphore源码学习笔记
  5. 智慧交通day02-车流量检测实现09:SORT/deepSORT
  6. pythonyaml参数_使用python检查yaml配置文件是否符合要求
  7. live555抓包实例
  8. dubbo发布webservice服务
  9. CentOS 7.4安装postgresql96
  10. 薄板开孔建模计算的ansys命令流
  11. stm32蜂鸣器程序
  12. 掌握业务流程图符号,提高业绩不再没有头绪
  13. 基于软件仿真的PLC系统测试技术
  14. Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。 当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少(蓝桥基础实战)
  15. android 自定义相册选择,Android图片选择器,支持拍照、从相册选择、裁剪、自定义主题...
  16. node打包时遇到的问题
  17. 不想将就,所以竭尽所能。
  18. 408计算机网络04-HTTP 长连接短连接使用场景是什么
  19. 天啦,从Mongo到ClickHouse我到底经历了什么?
  20. alpha因子常见问题_多因子模型是否真的可以带来阿尔法(alpha)?

热门文章

  1. java - 只输出中文, 包含中文标点符号
  2. FreeBSD 安装axel提高ports的安装速度
  3. 《深入学习 Golang》并发编程
  4. 【Java从0到架构师】SSM 整合(XML、纯注解)
  5. 小程序入门学习06--data、url传参、调用豆瓣api
  6. [转]Linux中常见目录简介
  7. 1月份Github上热门Python开源项目
  8. 期货一个价格变动对应价值变化
  9. NB贝叶斯平凡而又神奇的贝叶斯方法
  10. pdns backend mysql_安装PowerDNS(与MySQL后端)和Poweradmin在Debian蚀刻