JavaScript系列教程

JavaScript学习笔记(三十四)-- Node

2020-07-28  本文已影响0人  千锋HTML5学院

NODE

Node.js​
https://nodejs.org/en/

Node.js 中文网​
http://nodejs.cn/

下载 node 安装包

安装 node 环境

image

检测安装环境

node 初体验

直接在终端中书写 js 代码

在命令行运行一个 js 文件

// index.js
console.log('hello node')

常用的 LINUX 操作

目录操作

  1. 查看当前目录下所有文件
    $ dir

  2. 以树状结构展示当前目录下的所有文件及子目录下的所有文件
    $ tree

  3. 进入当前目录下的某一个目录
    $ cd 文件夹名称

  4. 返回上一级目录
    $ cd ..

  5. 切换盘符
    $ 盘符:
    $ d:

文件操作

  1. 创建文件夹
    # 表示在当前目录下创建一个叫做 test 的文件夹
    $ md test

  2. 移除文件夹
    # 表示移除当前文件夹下的 test 文件夹
    $ rd test

  3. 复制文件夹
    # 表示复制一份 test 文件夹起名为 test2
    $ xcopy test test2

  4. 创建文件
    # 表示在当前目录下创建一个叫做 index.js 的文件
    $ type nul> index.js

  5. 拷贝一份文件
    # 表示复制一份 index.js 文件起名为 ceshi.js
    $ copy index.js ceshi.js

  6. 向文本中写入内容
    # 表示向 index.js 中写入一段文本 console.log('hello world')
    $ echo console.log("hello world") > index.js

  7. 查看文件内的文本内容
    # 表示查看 index.js 文件中的文本内容是什么
    $ type index.js

  8. 给文件或者目录重命名
    # 表示把 index.js 更名为 abc.js
    $ ren index.js abc.js

  9. 删除文件
    # 表示把当前目录下的 index.js 删除
    $ del index.js

  10. 移动文件或文件夹
    # 表示把当前目录下的 index.js 文件移动到当前目录下的 a 文件夹下
    $ move index.js a

其他指令

  1. 清屏
    # 表示把当前屏幕的所有内容都清除
    $ cls

  2. 查看当前电脑 IP 信息
    # 表示查看当前电脑的 IP 信息
    $ ipconfig

  3. 测试某一个链接地址的网速
    # 表示查看访问 百度 网站的速度
    $ ping www.baidu.com

  4. 查看电脑信息
    # 表示查看当前电脑的信息
    $ systeminfo

NODE 的导入导出

导入

// 我是 index.js 文件
require('./a.js')
​
console.log('我是 index.js 文件')
// a 接受到的内容就是 a.js 这个文件导出的内容
// 如果 a.js 文件中什么都没有导出,那么接受到的就是一个 空对象
const a = require('./a.js')

导出

// 我是 a.js
​
// 每一个 js 文件都会有一个对象叫做 module
// 在 module 里面有一个成员,叫做 exports
// 每一个 js 文件会默认把 module.exports 导出
// 也就是说,我们向 module.exports 中添加什么内容
// 那么就会导出什么内容
​
module.exports.name = 'Jack'
module.exports.age = 18
// 我是 index.js
​
const a = require('./a.js')
​
console.log(a) // { name: 'Jack', age: 18 } 

模块化

  1. 内置模块 (node 天生就带有的模块)

  2. 自定义模块 (我们自己写的文件)

  3. 第三方模块 (从网上下载的别人写好的模块)

NODE 常用的内置模块

FS 模块

const fs = require('fs')
​
// 接下来就可以使用 fs 这个变量去操作文件了 

异步读取文件内容

const fs = require('fs')
​
// 因为是异步读取,所以要在回调函数里面获取结果
fs.readFile('./text.txt', 'utf8', function (err, data) {
 // err 表示读取的时候出现的错误
 // data 表示读取到的内容,如果出现错误,那么是 data 是没有内容的
})

同步读取文件内容

const fs = require('fs')
​
// 因为是同步读取,所以直接以返回值的形式接收读取的内容就可以
const res = fs.readFileSync('./text.txt', 'utf8')
// 同步读取的时候,如果出错会直接在控制台报错,并中断程序继续执行
// 如果没有错误,res 就会得到文件中的内容 

异步写入文件

const fs = require('fs')
​
// 写入内容的时候,一般不会出现错误
// 因为如果没有这个文件的话,会创建一个这个文件在向里面写入内容
// 所以回调函数一般没什么用处,只不过是在写入文件结束后做些事情而已
// 虽然没有用处,但是必须要写
fs.writeFile('./text.txt', '我是要写入的内容', function () {
 console.log('写入完成')
})

同步写入文件

const fs = require('fs')
​
// 因为是写入文件
// 没有返回值,因为一般都会写入成功
fs.writeFileSync('./text.txt', '我是要写入的内容')

HTTP 模块

const http = require('http')
​
// 接下来就可以使用 http 这个模块去开启服务了 

创建一个服务

const http = require('http')
​
// 创建一个服务
// 这个服务默认监听 http 协议
// 这个服务默认监听 localhost 域名
// 返回值就是这个服务
const server = http.createServer(function (request, response) {
 // 前端发来的每一个请求都会触发这个函数
 // request 包含着所有的请求信息
 // response 是所有的响应信息
})

监听一个端口

const http = require('http')
​
// 创建一个服务
const server = http.createServer(function (request, response) {
 // 前端发来的每一个请求都会触发这个函数
})
​
server.listen(8080, function () {
 // 这个函数会在服务开启成功以后执行
 console.log('listening on port 8080')
})

给出一个响应

const http = require('http')
​
// 创建一个服务
const server = http.createServer(function (request, response) {
 // 前端发来的每一个请求都会触发这个函数
 // 接受到请求以后给出一个响应
 response.end('hello world')
})
​
server.listen(8080, function () {
 // 这个函数会在服务开启成功以后执行
 console.log('lintening on port 8080')
})

NPM

检测是否安装

了解 npm

使用 npm

下载包

# 表示使用 npm 这个工具下载一个 jquery
$ npm install jquery
# 表示使用 npm 这个工具下载一个 3.3.7 版本的 jquery
$ npm install bootstrap@3.3.7

删除包

管理项目

npm 清除缓存

NRM

安装 NRM

检测安装

使用 nrm

检测镜像源地址

切换镜像源


上一篇 下一篇

猜你喜欢

热点阅读