当前位置: 首页 > article >正文

邂逅Node.js

首先先要来学习一下nodejs的基础(和后端开发有联系的)

再然后的学习路线是学习npm,yarn,cnpm,npx,pnpm等包管理工具

然后进行模块化的使用,再去学习webpack和git(版本控制工具)

Node.js是什么

官方对于nodejs的定义:Node.js是一个基于V8 JavaScript引擎的JavaScript运行时环境

他们的关系是:Node程序中含有V8引擎(可以执行JavaScript代码)

V8引擎可以嵌入到C++应用程序中,不论是Chrome还是Node.js都是嵌入了V8引擎来执行JavaScriptdiamante

在Chrome浏览器中,还需要解析,渲染HTML、CSS等相关渲染引擎,还需要提供支持浏览器操作的API、浏览器自己的事件循环等。。。

在Node.js中还需要进行文件系统读写、网络IO、加密、压缩解压文件等操作

Node程序用JS/C++/C语言进行编写

 我们编写的JavaScript代码会经过V8引擎,在通过Node.js的Bindings将任务放到Libuv的事件循环中,libuv是使用C语言编写的库,提供了事件循环、文件系统读写、网络IO、线程池 等内容

Node.js的应用场景

1.目前前端开发的 库都是以node包的形式进行管理

(npm本身是在node里的,当安装node的时候自动就会安装npm)

现在npm,yarn,pnpm工具成为前端开发使用最多的工具

越来越多的公司使用Node.js作为Web服务器开发、中间件、代理服务器

大量的项目都需要借助Node.js完成前后端渲染的同构应用

资深前端工程师需要为项目编写脚本工具(因为前端工程师编写脚本通常用JS)

前面说的都是Node的理论知识,现在开始实践,进行Node的安装

Node的安装

这是node的官网:

Node.js — 在任何地方运行 JavaScripthttps://nodejs.org/zh-cn点进去之后可以自选版本安装,本人的电脑之前已经安装过node了:

最好是选择较为稳定的版本进行安装,因为不容易出现问题,就算出现问题了也好解决一点(站在了前人的肩膀上)

安装完node之后可以直接借助node帮助我们运行js的代码,比如这样:

console.log("aaaa")
console.log("bbbb")
console.log("cccc")
console.log("dddd")
console.log("eeee")

这是因为node里面包含V8引擎可以解析JS代码并运行

node有版本的工具,你可以在你的电脑上装多个node的版本

工具有n和nvm,n这个工具就比较好用(是TJ开发的)但是不论是n还是nvm都有一个比较大的缺点:不支持Windows。啊?

但是有人在github上发布了nvm的支持Windows的版本(不是nvm本身)

在实际的开发中用一个版本就行勒,但是架不住有人想来回换版本

这是那个Windows版本的nvm工具:

coreybutler/nvm-windows: A node.js version management utility for Windows. Ironically written in Go.https://github.com/coreybutler/nvm-windows安装完之后就可以通过nvm list查看它帮你管理着什么样的包了

如果想要通过nvm安装东西,那就nvm install x.x.x(版本号),如果想要安装最新版,那可以用latest代替版本号

nvm use可以切换版本

如果你用的是n

安装:

npm install -g n

安装最新的lts版本:

n lts

安装最新的版本:

n latest

一个n就是查看所有的 版本(可以上下键切换,选定想要的之后回车就切换了)

Node的输入和输出

想要进行输入就要

const arg1 = process.argv[2]
const arg2 = process.argv[3]console.log(arg1,arg2)

再这样运行

输出的话就使用console.log就完事了,想要清空控制台就是console.clear,想打印函数的调用栈就console.trace,输出是这样的:

Node的REPL

什么是REPL?

REPL是Read-Eval-Print Loop的简称,翻译是“读取-求值-输出”循环

是一个简单的交互式的编程环境(说白了就是你打开网页然后F12一下的那个console栏)

在终端中敲一个node回车就可以来到这个环境了

想要清空内容就用cls

按两次Ctrl+C就可以退出了

这个没有git bash方便(git bash可以执行很多在Linux终端下可用的命令)

http://www.lryc.cn/news/2386390.html

相关文章:

  • 计算机视觉(图像算法工程师)学习路线
  • GITLIbCICD流水线搭建
  • 详细介绍Qwen3技术报告中提到的模型架构技术
  • 【慧游鲁博】【8】前后端用户信息管理:用户基本信息在小程序端的持久化与随时获取
  • 上位机知识篇---keil IDE操作
  • Odoo: Owl Hooks 深度解析技术指南
  • SpringBoot返回xml
  • 【案例篇】 实现简单SSM工程-后端
  • 零基础学习计算机网络编程----网络基本知识
  • Zynq和Microblaze的区别和优势
  • FastAPI 支持文件下载
  • CNN卷积神经网络到底卷了啥?
  • vue中v-clock指令
  • MIT 6.S081 2020Lab5 lazy page allocation 个人全流程
  • C++初阶-list的使用2
  • PHP序列化数据格式详解
  • 如何优化 MySQL 存储过程的性能?
  • 深度学习:损失函数与激活函数全解析
  • 【大前端】Node Js下载文件
  • 自训练NL-SQL模型
  • 创新点!贝叶斯优化、CNN与LSTM结合,实现更准预测、更快效率、更高性能!
  • 【Flutter】创建BMI计算器应用并添加依赖和打包
  • 【Linux 学习计划】-- 倒计时、进度条小程序
  • 微服务的应用案例
  • 后端开发概念
  • 2025网络安全趋势报告 内容摘要
  • 云原生安全基石:深度解析HTTPS协议(从原理到实战)
  • Autodl训练Faster-RCNN网络--自己的数据集(一)
  • python打卡day36
  • 8.Java 8 日期时间处理:从 Date 的崩溃到 LocalDate 的优雅自救​