2021-11-09 node学习笔记(一)nodejs介绍,模块化开发,npm,es6模块化写法

本文介绍了Node.js的基础知识,包括其作为JavaScript后端开发环境的角色,以及其用途如前后端数据交互和动态网站开发。重点讲解了Node.js的模块化开发,包括CommonJS规范和npm包管理工具的使用,如创建package.json文件、下载包和理解package-lock.json的作用。此外,还详细阐述了ES模块化的步骤,从初始化项目到解决import语法错误。
摘要由CSDN通过智能技术生成

1.介绍

node.js是一个JavaScript的开发环境
它是基于谷歌v8引擎开发的
可以把前端JavaScript语言用于服务器上
使得可以让JavaScript使用在后端开发程序上

2.用途
  • 前后端数据交互
  • 独立编写api接口
  • 动态网站开发
3.nodejs下载和运行

4.模块化开发,包和commonJS
为什么要模块化开发?
  • 原生js缺点:
依赖关系:定义的js要引用在调用的js之前
命名空间:不同js文件之间相同的方法名会被覆盖,只会以最后一个引用的为准
代码组织:定义出来的方法没有隐蔽性可以被任何人引用
  • 模块化开发的优点:
在定义时只对外暴露接口,使用时在js中引入
在nodejs开发中,把独立的功能单独放在一个个js文件,需要时在引用
说说nodejs的模块化规范?

commonJS 规范中的module子规范,
CommonJS模块规范主要分为三部分:模块引用、模块定义、模块标识。

5.npm
概念

npm:node package manager 包管理工具,可用于加载别人写好的模块
这些模块相互引用,最后形成一个完整的功能,组合在一起就形成了包(package)

常见API
1. npm -v:查看 npm 版本
2. npm init:初始化后会出现一个 Package.json 配置文件,可以在后面加上 -y,快速跳到问答界面
3. npm install:会根据项目中的 package.json 文件自动给下载项目中所需的全部依赖
步骤

先创建package.json文件(帮助记录包的信息,以及已下载的包的信息)
初始化命令是 node init
package name:给包起名字
下载包:npm i+包名

package.json文件的作用

可以看到package.json已经同步更新(这个文件的作用就是记录自己的信息以及记录引用了别人的哪些包,即依赖)
packages-lock.json文件的作用就是锁定别人引用你的包时的版本,免得你写的包更新了,造成依赖混乱
通常下载一个包后会多出来几个文件夹,这几个文件夹就是你下载的包,它所依赖的其他包
在这里插入图片描述

6.ES模块化写法(重点)
6.1.初始化项目

命令:npm init
生成package.json文件

6.2.创建模块文件

moduleA.js

const moduleA = {
    getName() {
        console.log("我叫张三");
    }
};
export default moduleA;
6.3.引入模块化文件

test.js

import moduleA from './moduleA.js'
moduleA.getName();

命令:node test.js

6.4. 解决报错:SyntaxError: Cannot use import statement outside a module

在package.json文件中添加代码:

"type": "module",//默认是commonjs
6.5.成功

再次输入命令:`node test.js
输出:我是张三

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

前端OnTheRun

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值