01-初识Node.js
目录
- 1、Node.js简介
- 2、Node.js 运行环境
- 3、 Node.js 可以做什么
- 4、Node.js的历史
- 5、 Node.js 环境的安装
- 参考
1、Node.js简介
- Node.js是一个能够在
服务器端
运行JavaScript的开放源代码
、跨平台JavaScript
运行环境。 - Node采用Google开发的
V8引擎
运行js代码,使用事件驱动
、非阻塞
和异步I/O模型
等技术来提高性能,可优化应用程序的传输量
和规模
。 - Node大部分基本模块都用
JavaScript编写
。在Node出现之前, JS通常作为客户端程序设计语言
使用,以JS写出的程序常在用户的浏览器
上运行。 - 目前,Node已被IBM、Microsoft、Yahoo!、Walmart、 Groupon、SAP、 LinkedIn、Rakuten、PayPal、Voxer和 GoDaddy等企业采用。
- Node主要用于编写像
Web服务器
一样的网络应用,这和PHP
和Python
是类似的。 - 但是Node与其他语言最大的不同之处在于,PHP等语言是
阻塞
的而Node是非阻塞
的。 - Node是
事件驱动
的。开发者可以在不使用线程
的情况下开发出一个能够承载高并发的服务器
。其他服务器端语言难以开发高并发应用,而且即使开发出来,性能也不尽人意。 - Node正是在这个前提下被创造出来, Node把JS的
易学易用
和Unix网络编程
的强大结合到了一起。
2、Node.js 运行环境
注意:
浏览器
是 JavaScript 的前端运行环境
Node.js
是 JavaScript 的后端运行环境
。- Node.js 中无法调用
DOM
和BOM
等浏览器内置API
。可以使用console
和定时器API
- Node.js的
顶级对象
是global
,也可以用globalThis
访问顶级对象。
3、 Node.js 可以做什么
- Node.js 作为一个
JavaScript 的运行环境
,仅仅提供了基础的功能和 API。然而,基于 Node.js 提供的这些基础使很多强大的工具和框架如雨后春笋,层出不穷,所以学会了 Node.js ,可以让前端程序员胜任更多的工作和岗位:
- 基于
Express 框架
(http://www.expressjs.com.cn/),可以快速构建Web 应用
- 基于
Electron 框架
(https://electronjs.org/),可以构建跨平台的桌面应用
- 基于
restify 框架
(http://restify.com/),可以快速构建API 接口项目
读写
和操作数据库
、创建实用的命令行工具
辅助前端开发、etc…
总之:Node.js
是大前端时代的“大宝剑
”,有了 Node.js 这个超级 buff 的加持,前端程序员的行业竞争力会越来越强!
4、Node.js的历史
- 说到
Node.js
就离不开它的创始人瑞安·达尔(Ryan Dahl)
Ryan Dahl
并非科班出身的开发者,在2004年
的时候他还在纽约的罗彻斯特大学
数学系读博士。- 2006年,也许是厌倦了读博的无聊,他产生了『世界那么大, 我想去看看』的念头,做出了退学的决定,然后一个人来到智利的
Valparaiso小镇
。 - 从那起,Ryan Dahl不知道是否因为生活的关系,他开始学习 网站开发了,走上了
码农
的道路。 - 那时候
Ruby on Rails
很火,他也不例外的学习了它。 - 从那时候开始,
Ryan Dahl
的生活方式就是接项目,然后去客 户的地方工作,在他眼中,拿工资和上班其实就是去那里旅行。 Ryan Dah
l经过两年的工作后,成为了高性能Web服务器
的专家,从接开发应用
到变成专门帮客户解决性能
问题的
专家。- 期间他开始写一些
开源项目
帮助客户解决Web服务器
的高并发性能
问题,他尝试了很多种语言,但是最终都失败了。 - 在他快绝望的时候,
V8引擎
来了。V8满足他关于高性能Web服务器的想象。于是在2009年2月它开始着手编写Node.js
。
5、 Node.js 环境的安装
如果希望通过
Node.js
来运行Javascript 代码
,则必须在计算机上安装Node.js 环境
才行。- 安装包可以从
Node.js 的官网首页
直接下载,进入到 Node.js 的官网首页(https://nodejs.org/en/
),点击
绿色的按钮,下载所需的版本后,双击直接安装即可。
- 安装包可以从
区分
LTS 版本
和Current 版本
的不同- LTS 为
长期稳定版
,对于追求稳定性的企业级项目来说,推荐安装 LTS 版本的 Node.js。 - Current 为
新特性尝鲜版
,对热衷于尝试新特性的用户来说,推荐安装 Current 版本的 Node.js。但是,Current
版本中可 能存在隐藏的 Bug
或安全性漏洞
,因此不推荐在企业级项目中使用 Current 版本的 Node.js。
- LTS 为
查看已安装的
Node.js 的版本号
。- 打开终端,在终端输入命令
node –v
后,按下回车键,即可查看已安装的Node.js 的版本号
。
- 打开终端,在终端输入命令
Windows系统快速打开终端的方式:
- 使用快捷键(
Windows徽标键 + R
)打开运行面板,输入cmd
后直接回车,即可打开终端。
- 使用快捷键(
参考
尚硅谷2023版Node.js零基础视频教程,nodejs新手到高手
01-初识Node.js相关推荐
- 初识Node.js之Node.js与java作为后台服务器的对比
最近去了新公司,又拾起了被我抛下许久的后端了,不过因为公司的需求,后端采用Node.js,最近一直在学习Node.js,随着逐渐深入的了解,发现真的Node.js能越来越变得热门是有其存在的道理的.可 ...
- 【Node.js】初识Node.js
系列文章目录 文章目录 系列文章目录 一.什么是 Node.js 二.下载和安装 Node.js 1.普通方式 2.使用 nvm 安装 三.Node.js 和 JavaScript 的区别 1.ECM ...
- 【Node.js】第一章 初识Node.js
目录 1.1 浏览器中的javascript的运行环境 1.2 Node.js 简介 1.1 浏览器中的javascript的运行环境 1. 浏览器的组成部分 2. javascript能在浏览器执 ...
- 1.初识Node.js
由于浏览器中有Javascript解析引擎,所以写的javascript可以在浏览器中执行,不同的浏览器有不同的JS解析引擎.由于浏览器内置了DOM,BOM,AJAX这种API,所以JS才能使用他们. ...
- 初识node.js(1)
什么是 node ? 一个基于 ChromeV8 解析引擎的 JavaScript 运行时环境,运行在电脑操作系统中. 前端 js 和 nodeJS 的区别 前端JS 当 js 被引入 html 页面 ...
- JavaScript - Node.JS教程系列-李游Leo-专题视频课程
JavaScript - Node.JS教程系列-147人已学习 课程介绍 Node.JS是一套使用JavaScript语言的后台.它执行Javascript的速度非常快,性能非常好. ...
- 2020 年 Node.js 开发者调查报告
导读:本次调查由阿里巴巴.腾讯等公司领衔,调查时间从 2020 年 2 月至 4 月,以中文进行.截止至 4 月 10 日共有 1113 名受访者参加调研.本报告将从 Nodejs 开发者人群.应用场 ...
- Node.js 开发者 2020 年度报告
大家好,我是若川.欢迎加我微信 ruochuan12,长期交流学习.今天分享一篇Node.js报告,记得当时我还参与填写这个调查问卷了,Node.js的重要性不言而喻.微信预计阅读只需7分钟.点击下方 ...
- Node.js 入门详解(一)
目录 前言 1. 初识 Node.js 1.1 回顾与思考 1.2 Node.js 简介 1.2.1 什么是Node.js 1.2.2 Node.js 中的 JavaScript 运行环境 1.2.3 ...
- Node.js -- JavaScript的运行环境
一初识Node.js 1.前端三剑客 HTML : 骨架 CSS :外观 JS : 灵魂 2.浏览器中JavaScript的组成部分 JavaScript可以在浏览器中被执行的原因是浏览器里面都有一个 ...
最新文章
- 相机设置感兴趣区域(自带API)
- 阿里云数据库产品HybridDB简介——OLAP数据库,支持行列混合存储,为用户提供基于开源 OLTP、OLAP、BigData 生态的一站式解决方案...
- linux网络编程二:基础socket, bind, listen, accept, connect
- 介绍理想工作计算机 英语作文,我的理想工作英语作文(精选5篇)
- java 填充字符串_如何用Java填充字符串?
- java文件下载用什么技术_Java中实现文件上传下载的三种解决方案(推荐)
- POJ-1903 Jurassic Remains
- c 语言随机生成迷宫,[原创]递归随机迷宫生成算法详解
- 半导体Led Driver IC失效分析
- python刘卫国实验题_刘卫国c 程序设计实践教程答案
- EV SSL证书和普通证书的区别
- php添加数据数据库乱码,php添加数据数据库乱码
- preLaunchTask“C/C++:g++.exe生成活动文件“已终止,退出代码为-1
- SEE MIPS RUN 第六章 内存管理与TLB
- springboot集成bboss操作elasticsearch索引,类型,文档(单集群)
- maya 白天室内灯光_Maya Vray室内灯光渲染教程
- jupyter的安装步骤
- GD32F103单片机设置时钟到108MHz,串口波特率错误的问题?
- hihocoder1081
- WEB安全基础简单总结(有些无序,大佬勿喷)