Node.js学习笔记

Node.js

一、Node.js简介

1. 关于JavaScript

什么是JavaScript?

  • JavaScript是一门脚本语言
  • 一般运行在浏览器中,用来做客户端的页面交互

JavaScript只能运行在浏览器中吗?

  • 不是,只要有JS引擎就可以运行JavaScript
  • Node.js中就包含了一个JS引擎,可以运行JavaScript

2. 关于Node.js

​ Node.js 是一个可以让JavaScript在服务器端运行的系统环境,即运行JavaScript不再依赖于浏览器

​ Node.js 是一个基于Chrome的JS引擎(V8)所开发的软件程序,可以执行ECMAScript,但不支持DOM和BOM操作

​ Node 提供大量API工具库,使JavaScript可以完成更多功能,如IO操作、数据库操作、获取系统资源等。

node运行环境

3. Node.js作用

开发Web应用程序

  • 开发动态网站
  • 开发提供数据的服务端API

前端开发工具的基础

  • 许多前端开发工具都是基于Node环境

二、Node环境搭建

1. 安装Node

​ node官网:https://nodejs.org

​ node中文网:http://nodejs.cn

​ 直接执行软件包进行安装即可,安装完成后打开控制台(cmd),执行命令 node -v 查看安装版本即可

2. 基本使用

​ 在命令行中执行.js文件: node js文件路径

三、模块化

1. 简介

模块化是指将一个复杂的项目按照一定的规则拆分成一个个模块,进行组合使用,完成项目的开发

  • 模块的内部对使用者来说是透明的,在模块内部会进行成员的导出,向外暴露接口
  • 使用者在使用时加载对应的模块,并调用模块提供的功能即可

Node使用模块化的方式组织代码结构:

  • 一个模块可以是一个独立文件,也可以是一个文件夹,但都需要符合特定的要求
  • 模块中提供的数据和功能,需要进行导出才能被外部所使用

2. 定义模块并导出

2.1 文件模块

独立文件模块:

  • .js文件模块,使用js语法方式进行定义,并通过 module.exports 进行模块功能导出
2.2 文件夹模块

文件夹模块的要求:

  • 根目录下必须存在index.jspackage.json文件,即必须有入口文件

  • 如果同时存在,则package.json优先级更高

  • 如果存在package.json文件,会自动加载package.json文件中main指向的文件

关于package.json文件,格式如下:

{
  "name": "模块名",
  "version": "模块版本",
  "description": "模块描述",
  "main": "模块的入口文件",
  "scripts": {
    "命令名": "模块的执行命令"
  },
  "keywords": ["模块的关键字"],
  "author": "模块的作者",
  "license": "模块的开源协议,如:ISC、MIT"
}

在Node.js环境中,存在package.json文件的文件夹,其实是一个独立的Node项目,该文件用于定义项目的相关信息

  • 可以使用npm( node package manager ) 命令,自动生成package.json文件
  • 语法: npm initnpm init --yes

3. 导入模块并使用

在Node.js环境中使用 require(模块路径|模块名) 进行模块的加载导入:

  • 省略后缀名时模块的查找顺序: .js
  • 加载模块时的查找顺序:核心模块——>第三方模块——>用户定义模块

模块的分类:

  • 核心模块,在安装完Node环境后,Node环境自带的模块,可直接导入使用
  • 第三方模块,使用npm命令从外网下载并安装的模块
  • 用户定义模块,开发者通过模块定义语法自定义的模块

四、第三方模块的安装

1. npm简介

​ 全称node package manager(Node包管理工具)

​ npm是随同Node.js一起安装的包管理工具,用来安装、卸载、更新软件包/模块等,同时能够解决软件包之间的依赖关系

​ 官网:https://www.npmjs.com

2. npm用法

命令作用备注
npm init [--yes]初始化项目/模块在项目根目录下会生成package.json(等同于npm create
npm install 模块名下载并安装模块下载后的模块文件存储在 node_modules 文件夹中
npm install 模块名@版本号下载并安装指定版本的模块默认安装模块的最新版本
`npm install 模块名 --save-S`下载并以生产依赖的方式安装
`npm install 模块名 --save-dev-D`下载并以开发依赖的方式安装
npm install 模块名 -g全局安装模块为系统提供全局功能,存储于node的全局环境中,如 nrm
npm install下载并安装项目的所有依赖包自动读取package.json文件中的依赖信息并下载安装
npm uninstall 模块名卸载模块–save|-S、–save-dev|-D、-g 会自动删除package.json中的依赖记录
npm run 命令名 执行指定的命令执行package.json文件中的scripts属性的指定命令

3. 全局模块nrm

该模块为node的全局扩展模块,提供系统命令,用于实现快速 npm 源地址切换

执行npm install nrm -g 进行全局安装

  • nrm ls 查看地址列表
  • nrm use 切换地址
  • nrm test 测试速度
  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

渴求sspOffer的小周同学

您的支持是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值