node.js(一)

本文介绍了Node.js的基本概念,如其作为非阻塞、事件驱动的运行时环境,npm包管理工具的作用,以及其在Web服务器开发中的应用。还涵盖了Node.js的安装、环境配置和HelloNode示例。后续将探讨B/S编程、模块化编程、异步编程等内容。
摘要由CSDN通过智能技术生成

node.js(一)

  • 网站服务器
    能够提供网站访问服务的机器是网站服务器,能够接受客户端的请求,针对请求作出相应的响应。

1.简介

1.1 什么是Node.js?

  • Node.js不是一门语言,不是库,不是框架,是一个运行时环境
    简单来说是node.js可以解析和执行js代码
    以前只有浏览器可以解析执行js代码,现在可以完全脱离浏览器运行,归功于node.js

    浏览器中的js:基本语法、BOM、DOM
    node中的js:没有BOM/DOM(服务端不操作界面)、有基本语法、一些服务器级别的API
    例如:文件的读写,网络服务的构建,网络通信,http服务器

    学习node就是在学习网络服务器的开发

  • Node.js是一个建立在Google Chrome V8引擎上的非阻塞,事件驱动的,异步操作,轻量高效的生态系统

  • npm是一个基于node.js开发的包管理工具,npm是世界上最大的开源库生态系统,绝大多数的js相关包都放在npm上,为开发人员方便下载使用

1.2 Node.js能做什么?

  • Web服务器后台
  • 命令行工具:npm hexo git

1.3 Node.js特性

REPL模式(Read-Evaluate-Print-Loop, 输入-求值-输出-循环)
在命令行中 node xxx.js
在webstorm,Vscode等编译器中执行

node是单线程异步,无阻塞IO操作.基于事件驱动任务执行的
类似于发布订阅(响应式)

window VS global
客户端this执向window
在JS中执行,this执行当前模块,在命令行中执行,this指向global

1.4 Node.js优点

Node作为一个热门的前端框架,后台语言,有很多吸引人的地方:

  • RESTful API
  • 单线程
    Node可以在不新增额外线程的情况下,依然可以对任务进行并发处理 —— Node.js是单线程的。它通过事件循环(event loop)来实现并发操作,对此,我们应该要充分利用这一点 —— 尽可能的避免阻塞操作,取而代之,多使用非阻塞操作。

1.5 接下来的计划

(1)B/S编程模型
browser-sever,back-end
任何服务器端技术的BS编程模型都是一样的,和语言无关
(2)模块化编程:引用加载js文件
(3)node常用api
(4)异步编程
(5)express web开发框架
(6)ES6

node --version/node -v:看有没有对应版本的更新
已经安装过,重新安装会覆盖,进行版本升级

2.起步

2.1、安装node环境

官网:https://nodejs.org/en/

LTS = Long Time Support 长期支持版 稳定版
Current 拥有最新特性 实验版

Node环境安装失败解决办法

  1. 错误代号2502、2503
    失败原因:系统帐户权限不足。

解决办法:

以管理员身份运行powershell命令行工具
输入运行安装包命令 msiexec /package node安装包位置

  1. 执行命令报错
    失败原因:Node安装目录写入环境变量失败

解决办法:将Node安装目录添加到环境变量中

2.2.PATH环境变量

存储系统中的目录,在命令行中执行命令的时候系统会自动去这些目录中查找命令的位置。

2.3.多版本安装方式

据说直接安装新版本会进行覆盖

  • 卸载已有的Node.js
  • 下载nvm 在C盘创建目录dev 在dev目中中创建两个子目录nvm和nodejs
  • 把nvm包解压进去nvm目录中 在install.cmd文件上面右键选择【以管理员身份运行】
  • 打开的cmd窗口直接回车会生成一个settings.txt文件,修改文件中配置信息 配置nvm和Node.js环境变量
    NVM_HOME:C:\dev\nvm NVM_SYMLINK:C:\dev\nodejs 把配置好的两个环境变量加到Path中

3.hello node

在命令行中运行js文件
(1)创建编写JavaScript脚本文件(node的文件都为js文件)
(2)打开终端,定位到脚本文件所述目录
(3)输入node 文件名执行对应文件

  • 注意:文件名不要使用node.js来命名
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

this_is_Azou

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

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

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

打赏作者

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

抵扣说明:

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

余额充值