01学习nodejs的准备工作

news2025/1/26 15:16:21

01学习nodejs的准备工作

  • 1.回顾与思考
    • 1.1为什么JavaScript可以在浏览器中被执行
    • 1.2为什么JavaScript可以操作DOM和BOM?
    • 1.3浏览器中的JavaScript运行环境
    • 1.4JavaScript 能否做后端开发
  • 2.Nodejs简介
    • 2.1什么是nodejs
    • 2.2 Node.js中的 JavaScript 运行环境
    • 2.3 Node.js可以做什么
    • 2.4 Node.js的学习路径
    • 2.5 安装Node.js
    • 2.6 hello Node.js

1.回顾与思考

1.1为什么JavaScript可以在浏览器中被执行

在这里插入图片描述
JavaScript解析引擎可以将JavaScript进行解析,交由浏览器执行,不同的浏览器使用不用的解析引擎:

浏览器引擎
ChromeV8
FireFoxOdinMonkey(奥丁猴)
SafriJSCore
IEChakra(查卡拉)

其中,V8解析引擎性能最好。

1.2为什么JavaScript可以操作DOM和BOM?

因为每个浏览器都内置了DOM、BOM、Ajax这样的API函数,因此,浏览器中的JavaScript才可以操作他们。
在这里插入图片描述

1.3浏览器中的JavaScript运行环境

运行环境是指代码正常运行所需的必要环境。以chrome为例:
在这里插入图片描述
总结起来,运行环境主要就两个:引擎和内置api。其中引擎负责解析和执行JavaScript代码,内置API是由运行环境提供的特殊接口,只能在所属的运行环境中被调用(只能在运行环境中生效)。

1.4JavaScript 能否做后端开发

一般情况下,常用做后端开发的有java、python、php、c#等语言。但实际上,单纯使用javascript不能做后端开发,但借助nodejs可以做后端开发。因为javascript的执行离不开运行环境,而nodejs也是一个运行环境(后端的运行环境)。

2.Nodejs简介

2.1什么是nodejs

在这里插入图片描述

Node.js是一个基于Chrome V8引擎的JavaScript运行环境。如果将js代码放到浏览器执行说明是在做前端开发,放到nodejs中运行说明在做后端开发。

2.2 Node.js中的 JavaScript 运行环境

  • 浏览器是JavaScript的前端运行环境
  • Node.js是JavaScript的后端运行环境
  • Node.js无法调用DOM和BOM等浏览器内置API(这个要注意)
    在这里插入图片描述

2.3 Node.js可以做什么

Node.js 作为一个JavaScript的运行环境,仅仅提供了基础的功能和 API。然而,基于 Node.js提供的这些基础能,很多强大的工具和框架如雨后春笋,层出不穷,所以学会了 Node.js,可以让前端程序员胜任更多的工作和岗位:

  • 基于Express框架,可以快速构建Web应用
  • 基于Electron框架,可以快速构建跨平台的桌面应用
  • 基于restify框架,可以快速构建API接口项目
  • 读写和操作数据库。创建使用的命令行工具辅助前端开发
  • etc…

2.4 Node.js的学习路径

  • 浏览器中的 JavaScript 学习路径:
    JavaScript 基础语法+浏览器内置API(DOM+BOM)+第三方库(jQuery、art-template等)
  • Node.js 的学习路径:
    JavaScript 基础语法+Node.js 内置API模块(fs、path、http等)+第三方API模块(express、mysql等)

2.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。
  • 查看已安装的 Node.js 的版本号
    打开终端,在终端输入命令 node –v 后,按下回车键,即可查看已安装的 Node.js 的版本号。
    Windows 系统快速打开终端的方式:
    使用快捷键(Windows徽标键 + R)打开运行面板,输入 cmd 后直接回车,即可打开终端。
    在这里插入图片描述

2.6 hello Node.js

创建hello.js文件,输入下列代码:

console.log("hello node.js")

然后打开终端cd到js文件的目录下,使用node hello.js运行,即可看到效果:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2281739.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024年度总结-CSDN

2024年CSDN年度总结 Author:OnceDay Date:2025年1月21日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 文章目录 2024年CSDN年度总结1. 整体回顾2…

2024年度技术总结——MCU与MEMS和TOF应用实践

引言 2024年对我来说是技术成长与突破的一年。在这一年里,我不仅在技术领域拓展了深度和广度,还通过与客户合作的实际项目,成功实现了从单一MCU到MCU、MEMS与TOF技术融合的跨越。这一过程中,我深刻认识到,技术的进步不…

五、深入了解IoC

IoC控制反转,就是将对象的控制权交给Spring的IOC容器,由IOC容器创建及管理对象。也就是bean的存储。 5.1Bean的存储 共有两类注解类型可以实现: 1.类注解:Controller、Service、Repository、Component、Configuration. 2.方法注…

python-leetcode-有效的字母异位词

242. 有效的字母异位词 - 力扣(LeetCode) class Solution:def isAnagram(self, s: str, t: str) -> bool:return sorted(s) sorted(t)

RHCE实验详解

目录 实验分析 环境拓扑结构 项目需求 主机环境描述 实验步骤 一、密钥互信和主机名更改 二、DNS 三、NGINX 四、MARIADB 五、NFS 六、NTP 七、论坛服务 结果展示及痛点解答 实验分析 环境拓扑结构 项目需求 1. 172.25.250.101 主机上的 Web 服务要求提供 www.ex…

【Unity】ScrollViewContent适配问题(Contentsizefilter不刷新、ContentSizeFilter失效问题)

最近做了一个项目,菜单栏读取数据后自动生成,结果用到了双重布局 父物体 尝试了很多方式,也看过很多大佬的文章,后来自己琢磨了一下,当子物体组件自动生成之后,使用以下以下代码效果会好一些: …

linux如何修改密码,要在CentOS 7系统中修改密码

要在CentOS 7系统中修改密码,你可以按照以下步骤操作: 步骤 1: 登录到系统 在登录提示符 localhost login: 后输入你的用户名。输入密码并按回车键。 步骤 2: 修改密码 登录后,使用 passwd 命令来修改密码: passwd 系统会提…

Qt Creator 15.0.0如何更换主题和字体

1.打开Qt Creator 15.0.0 (Community), 2.点击编辑栏3.点击Preferences... 4.修改主题,点击环境,修改Theme:栏 5.修改字体大小,点击文本编辑器,修改字号栏。,修改Theme:栏

Java 日志技术、Logback日志框架、日志级别

一. 日志 1. 日志:程序中的日志,通常就是一个文件,里面记录的是程序运行过程中的各种信息。 二. 日志技术 1. 日志技术:可以将系统执行的信息,方便的记录到指定的位置(控制台、文件中、数据库中) 2. 可以随时以开关的…

【多视图学习】显式视图-标签问题:多视图聚类的多方面互补性研究

Explicit View-labels Matter:A Multifacet Complementarity Study of Multi-view Clustering TPAMI 2024 论文链接 代码链接 0.论文摘要 摘要-一致性和互补性是促进多视图聚类(MVC)的两个关键因素。最近,随着流行的对比学习的引入&#…

Datax可视化工具Datax-web安装部署

文章目录 一、Datax-web官网二、Datax-web介绍 1、Datax-web概述2、架构图3、系统环境要求4、特性支持 三、安装部署 1、环境准备2、Datax-web安装包准备 一、Datax-web官网 github:Datax-web gitee: Datax-web 二、Datax-web介绍 1、Datax-web概述 DataX Web…

Spark Streaming编程基础

文章目录 1. 流式词频统计1.1 Spark Streaming编程步骤1.2 流式词频统计项目1.2.1 创建项目1.2.2 添加项目依赖1.2.3 修改源目录1.2.4 添加scala-sdk库1.2.5 创建日志属性文件 1.3 创建词频统计对象1.4 利用nc发送数据1.5 启动应用,查看结果 2. 编程模型的基本概念3…

最新-CentOS 7 基于1 Panel面板安装 JumpServer 堡垒机

CentOS 7 基于1 Panel面板安装 JumpServer 堡垒机 一、前言二、设备要求三、环境要求四、安装4.1 环境安装4.2 JumpServer安装4.3 访问JumpServerWeb端,进行登录 五、登录Web控制台 一、前言 JumpServer是广受欢迎的开源堡垒机。运维必备神器!JumpServe…

【电脑无法通过鼠标和键盘唤醒应该怎么办】

【电脑无法通过鼠标和键盘唤醒应该怎么办】 方法一(有时候不起作用):方法二(方法一无效时,使用方法二): 方法一(有时候不起作用): 方法二(方法一无效时,使用方法二):

python学习笔记2-简单数据类型

不同类型的变量可以进⾏的运算是不同的,所以必须理解变量的类型,python中数据类型可以分为: Number(数值) 整型(int) python3中只有int⼀种,可以表⽰整数,例如&#xf…

iOS开发设计模式篇第二篇MVVM设计模式

目录 一、什么是MVVM 二、MVVM 的主要特点 三、MVVM 的架构图 四、MVVM 与其他模式的对比 五、如何在iOS中实现MVVM 1.Model 2.ViewModel 3.View (ViewController) 4.双向绑定 5.文中完整的代码地址 六、MVVM 的优缺点 1.优点 2.缺点 七、MVVM 的应用场景 八、结…

Kafak 单例生产者实现-C#操作

前面写了一篇入门操作的文章,因为工作需要,简单修改了下如何实现单例生产者。 Kafka入门-C#操作_c# kafka-CSDN博客文章浏览阅读1.6k次,点赞20次,收藏9次。2).报错:“kafka.zookeeper.ZooKeeperClientTimeoutException: Timed out waiting for connection while in state…

JAVA与数据结构-线性表

目录 一.线性表的概念 二.线性表的关系及分类 三.数组与顺序表 四.链表 1.静态链表(链表的的数组底层实现) 2.循环链表 3.双向链表 五.栈 1.栈的概念 2.栈的底层实现 3.共享空间栈 4.逆波兰表达式(后缀表达式) 5.栈与递归 六.…

2024.1.22 安全周报

政策/标准/指南最新动态 01 工信部印发《关于加强互联网数据中心客户数据安全保护的通知》 原文: https://www.secrss.com/articles/74673 互联网数据中心作为新一代信息基础设施,承载着千行百业的海量客户数据,是关系国民经济命脉的重要战略资源。…