Node.js入门
Node.js入门
1.简介
Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境,基于Google的V8引擎。
如果我们使用 PHP 来编写后端的代码时,需要 Apache 或者 Nginx 的 HTTP 服务器,并配上 mod_php5 模块和 php-cgi。不过对 Node.js 来说,概念完全不一样了。使用 Node.js 时,我们不仅仅 在实现一个应用,同时还实现了整个 HTTP 服务器。事实上,我们的 Web 应用以及对应的 Web 服务器基本上是一样的。
Node.js安装地址及方法:
地址:https://nodejs.org/en/download/
方法:https://www.runoob.com/nodejs/nodejs-install-setup.html
2.npm
2.1 nmp使用
npm(全称 Node Package Manager,即“node包管理器”)是一个免费的模块分享社区,是Node.js默认的、用JavaScript编写的软件包管理系统,会随着Node.js一起安装,能解决NodeJS代码部署上的很多问题。
官网:https://www.npmjs.com/
npm有windows系统的全局变量,在命令行输入npm -v
可以查看到当前安装的npm版本。
可以用npm来引入第三方的模块,我在这里以命令行颜色输出的模块colors为例,这个模块可以使命令行里面的字的样式变成别的颜色,地址为https://www.npmjs.com/package/colors ,里面有使用方法
- 在命令行中进入到要安装模块的目录,输入命令
npm install colors
安装完成后会出现node_modules文件夹和package-lock.json两个东西
node_modules里面有封装好了的模块文件。
- 在这个目录下新建一个app.js文件
- 在里面输入
1
2
3
4
5
6
7
8var colors = require('colors');
console.log('hello'.green); // outputs green text
console.log('i like cake and pies'.underline.red) // outputs red underlined text
console.log('inverse the color'.inverse); // inverses the color
console.log('OMG Rainbows!'.rainbow); // rainbow
console.log('Run the trap'.trap); // Drops the bass
- 保存之后在原来的命令行中输入
node app.js
可以看到效果:
2.2 npm身份证
我们从npm中下载的modules文件夹被称为‘依赖’,我们可以使用package.json去管理这些的‘依赖’。需要创建一个身份证,通常创建项目第一件事就是新建身份证。
- 新建一个项目文件夹
- 在命令行进入到响应的文件夹,输入命令
npm init
- 接着输入表单信息,包括包名,描述,版本号,作者等信息,可以按需回答,也可以回车跳过
- 填好后原来的文件夹之中会出现一个package.json文件,里面包含了身份证的信息
- 再次以模块colors为例,在命令行输入命令
npm install --save colors
,package.json文件中就会出现模块的依赖项
这样做的原因:node_modules中的模块之间都是相互影响的,如果引入的模块特别多,进行文件传输时,可能会造成非常的大的影响。而只传身份证,
在下一次安装模块使用时,只要在项目文件夹下输入命令npm install
,npm就会检索存放在package.json里面的信息,安装所有依赖。
3.内置Node.js模块使用
为了让Node.js的文件可以相互调用,Node.js提供了一个简单的模块系统。
模块是Node.js 应用程序的基本组成部分,文件和模块是一一对应的。换言之,一个 Node.js 文件就是一个模块,这个文件可能是JavaScript 代码、JSON 或者编译过的C/C++ 扩展。
除了可以使用npm来使用第三方模块之外,Node.js还提供了许多内置模块,见https://nodejs.org/docs/latest-v15.x/api/
已文件系统模块fs为例:
1 |
|
通过这种方式,可以建立一个服务器,设计路由,从而方便网页的访问