Node.js |(一)Node.js简介及计算机基础 | 尚硅谷2023版Node.js零基础视频教程

学习视频:尚硅谷2023版Node.js零基础视频教程,nodejs新手到高手

在这里插入图片描述

文章目录

  • 📚关于Node.js
    • 🐇为什么要学Node.js
    • 🐇Node.js是什么
    • 🐇Node.js的作用
    • 🐇Node.js下载安装
    • 🐇命令行工具
    • 🐇Node.js初体验
    • 🐇Node.js注意点
  • 📚Buffer
    • 🐇概念
    • 🐇特点
    • 🐇使用
      • 🥕创建Buffer
      • 🥕Buffer 与字符串的转化
      • 🥕Buffer的读写
  • 📚计算机基础
    • 🐇计算机基本组成
    • 🐇程序运行的基本流程
    • 🐇进程与线程

📚关于Node.js

在这里插入图片描述
在这里插入图片描述

🐇为什么要学Node.js

  • 可以让其他人访问我们编写的网页
  • 后续的框架学习打基础。

🐇Node.js是什么

  • Node.js是一个开源的,跨平台的JavaScript运行环境。
  • 通俗来讲Node.js就是一款应用程序,是一款软件,它可以运行Javascript

🐇Node.js的作用

  • 开发服务器应用
    在这里插入图片描述
  • 开发工具类应用
    在这里插入图片描述
  • 开发桌面端应用
    在这里插入图片描述

🐇Node.js下载安装

官方网站,下载左边LTS版本
在这里插入图片描述


  • 点击next
    在这里插入图片描述

  • 选择安装位置
    在这里插入图片描述

  • 点击next
    在这里插入图片描述

  • 不勾选后按next
    在这里插入图片描述

  • install,等待安装完毕


  • Node.js没有桌面快捷方式,cmd查看是否安装成功
    在这里插入图片描述

🐇命令行工具

  • win+R+cmd打开命令提示符
  • 命令的结构
    在这里插入图片描述
  • 常用的命令:常用的 Linux 操作

🐇Node.js初体验

  • 新建js文件
    在这里插入图片描述

法一

  • cmd命令行切换到文件所在目录
    在这里插入图片描述
  • 输出
    在这里插入图片描述

法二

  • 在vscode集成终端打开
    在这里插入图片描述
  • 在终端运行
    在这里插入图片描述

🐇Node.js注意点

  • Node.js中不能使用BOM和DOM的API
    在这里插入图片描述
    在这里插入图片描述
  • Node.js中的顶级对象为global,也可以用globalThis访问顶级对象。

📚Buffer

🐇概念

在这里插入图片描述

🐇特点

在这里插入图片描述

🐇使用

🥕创建Buffer

  • Buffer.alloc
    //创建了一个长度为 10 字节的 Buffer,相当于申请了 10 字节的内存空间,每个字节的值为 0
    let buf_1 = Buffer.alloc(10); // 结果为 <Buffer 00 00 00 00 00 00 00 00 00 00>
    
  • Buffer.allocUnsafe
    //创建了一个长度为 10 字节的 Buffer
    //buffer 中可能存在旧的数据(内存空间是可以复用的), 可能会影响执行结果,所以叫unsafe
    let buf_2 = Buffer.allocUnsafe(10);
    //用这种方式创建速度比alloc快很多。
    
  • Buffer.from
    //通过字符串创建 Buffer
    let buf_3 = Buffer.from('hello');
    //通过数组创建 Buffer
    let buf_4 = Buffer.from([105, 108, 111, 118, 101, 121, 111, 117]);
    

🥕Buffer 与字符串的转化

  • 我们可以借助 toString 方法将 Buffer 转为字符串。

  • toString 默认是按照 utf-8 编码方式进行转换的。

    let buf_4 = Buffer.from([105, 108, 111, 118, 101, 121, 111, 117]);
    console.log(buf_4.toString())
    

🥕Buffer的读写

  • Buffer 可以直接通过 [] 的方式对数据进行处理。

    //读取
    console.log(buf_3[1]);
    //修改
    buf_3[1] = 97;
    //查看字符串结果
    console.log(buf_3.toString());
    
    1. 如果修改的数值超过 255 ,则超过 8 位数据会被舍弃。
    1. 一个utf-8 的字符一般占 3 个字节。
// []
let buf = Buffer.from('hello');
console.log(buf[0].toString(2));// 01101000
console.log(buf);
buf[0] = 95;
console.log(buf.toString());//溢出,仅了解
let buf1 = Buffer.from('hello');
buf1[0] = 361;// 舍弃高位的数字  0001 0110 1001  => 0110 1001
console.log(buf1);//中文
let buf2 = Buffer.from('你好');
console.log(buf2);

在这里插入图片描述

📚计算机基础

🐇计算机基本组成

计算机组成原理笔记捞捞

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

🐇程序运行的基本流程

  • 操作系统:操作系统笔记捞捞
    在这里插入图片描述

  • 启动的基本过程
    在这里插入图片描述

    • 1.将操作系统程序安装到硬盘——电脑可以开机去运行
    • 2.首先将Window相关程序文件载入内存——CPU可以运行
    • 3.执行的时候
      • 视频信号交给显卡,再交给显示器
      • 声音信号交给声卡,再交给播放设备
  • 程序运行的基本过程
    在这里插入图片描述

    • 1.先把相关程序载入内存
    • 2.CPU读取指令,执行指令
    • 3.执行的时候
      • 视频信号交给显卡,再交给显示器
      • 声音信号交给声卡,再交给播放设备

小结

  • 程序一般保存在硬盘中,软件安装的过程就是将程序写入硬盘的过程。
  • 程序在运行时会加载进入内存,然后由CPU读取并执行程序。

🐇进程与线程

  • 详见操作系统笔记

  • 进程是程序的一次执行过程。

  • 线程是一个进程中执行的一个指向流,一个线程是属于某个进程的。

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

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

相关文章

ebay儿童书包产品CPC认证

儿童书包是一种能够盛放书本或者文具的包。现在的书包五花八门&#xff0c;以普通的布料或者是帆布等制成&#xff0c;有背带&#xff0c;包内一般分栏。一般分三种&#xff0c;背在身后的&#xff0c;挎在肩上的&#xff0c;轮式&#xff08;可以拖行&#xff09;的。 一、美国…

树,森林的遍历,以及其与二叉树遍历之间的关系

树和森林的的遍历 树的遍历 先根遍历 以下列树为演示 首先将树转化成二叉树&#xff08;孩子兄弟表示法&#xff1a;就是每个节点的左边连着它的左孩子&#xff0c;右边连自己右边的第一个兄弟&#xff09; 然后把转化为的二叉树进行先序遍历&#xff0c;中序遍历 进行先序…

再次斩获第一,文心3.5霸榜国内大模型

目录 1 什么是文心一言&#xff1f;2 体验与文心一言对话3 文心3.5霸榜国内大模型 1 什么是文心一言&#xff1f; 文心一言是百度全新一代知识增强大语言模型&#xff0c;文心大模型家族的新成员&#xff0c;能够与人对话互动&#xff0c;回答问题&#xff0c;协助创作&#xf…

【数据结构】Disruptor环形数组无锁并发框架阅读

Disruptor 是苹国外厂本易公司LMAX开发的一个高件能列&#xff0c;研发的初夷是解决内存队列的延识问顾在性能测试中发现竟然与10操作处于同样的数量级)&#xff0c;基于Disruptor开发的系统单线程能支撑每秒600万订单&#xff0c;2010年在QCn演讲后&#xff0c;获得了业界关注…

linux内网穿透应用场景有哪些?快解析有什么用处?

随着网络技术的不断发展&#xff0c;无论是工作上还是在生活中人们对网络的依赖和需求越来越高。Linux内网穿透作为一种创新的解决方案&#xff0c;为我们提供了无限可能。 首先我们了解一下Linux操作系统。Linux是一套免费使用和自由传播的类Unix操作系统&#xff0c;是一个基…

用Python获取链家二手房房源数据,做可视化图分析数据

前言 数据采集的步骤是固定: 发送请求, 模拟浏览器对于url地址发送请求获取数据, 获取网页数据内容 --> 请求那个链接地址, 返回服务器响应数据解析数据, 提取我们需要的数据内容保存数据, 保存本地文件 所需模块 win R 输入cmd 输入安装命令 pip install 模块名 (如果你…

UML-构件图

目录 1.概述 2.构件的类型 3.构件和类 4.构件图 1.概述 构件图主要用于描述各种软件之间的依赖关系&#xff0c;例如&#xff0c;可执行文件和源文件之间的依赖关系&#xff0c;所设计的系统中的构件的表示法及这些构件之间的关系构成了构件图 构件图从软件架构的角度来描述…

leetcode357周赛

2810. 故障键盘 核心思想&#xff1a;自己想的笨办法&#xff0c;枚举s&#xff0c;然后遇到i就翻转。比较好的方法就是双端队列&#xff0c;遇到i字母原本往后加的就往前加&#xff0c;然后读的时候反过来读&#xff0c;往前加的就往后加&#xff0c;读的话就从前往后&#x…

git 版本控制与合并

一 git概述&#xff1a; - Git是一种分布式版本控制系统&#xff0c;用于跟踪和管理软件开发项目中的代码变更。 - 它允许多人协同工作&#xff0c;记录代码历史变更&#xff0c;并轻松管理多个项目版本。 **Git的主要特点**包括&#xff1a; 1. **分布式系统**&#xff1a;…

小研究 - MySQL 分区分表的设计及实(一)

随着信息技术的快速发展&#xff0c;数据量越来越大&#xff0c;海量的表查询操作需要消耗大量的时间&#xff0c;成为影响数据库访问性能提高的主要因素。为了提升数据库操作的查询效率和用户体验&#xff0c;在关系型数据库管理系统(MySQL)中通过 range 分区和 Merge 存储&am…

c++:day4

1.思维导图 2.shell函数获取uid和gid&#xff0c;并用变量接 #!/bin/bashfunction fun() {read -p "输入用户名" necho uid:id -u $necho gid:id -g $n } afun echo $a3.冒泡、选择和快排代码整理 /**************************************************************…

嵌入式一开始该怎么学?学习单片机

学习单片机&#xff1a; 模电数电肯定必须的&#xff0c;玩单片机大概率这两门课都学过&#xff0c;学过微机原理更好。 直接看野火的文档&#xff0c;芯片手册&#xff0c;外设手册。 学单片机不要纠结于某个型号&#xff0c;我认为stm32就OK&#xff0c;主要是原理和感觉。…

窥探系列之Mybatis-plus XML分页查询

mybatisPlus分页查询原理 searchCount字段控制是否查询总记录数 com.baomidou.mybatisplus.plugins.PaginationInterceptor 该插件拦截sql&#xff0c;如果searchCounttrue&#xff0c;则使用sql解析包jsqlparser根据原sql生成count语句&#xff0c;另外关键

分布式应用:Zookeeper 集群与kafka 集群部署

目录 一、理论 1.Zookeeper 2.部署 Zookeeper 集群 3.消息队列 4.Kafka 5.部署 kafka 集群 6.FilebeatKafkaELK 二、实验 1.Zookeeper 集群部署 2.kafka集群部署 3.FilebeatKafkaELK 三、问题 1.解压文件异常 2.kafka集群建立失败 3.启动 filebeat报错 4.VIM报错…

服务器数据恢复-raid5同步过程中又有一块磁盘报警的数据恢复案例

服务器数据恢复环境&#xff1a; 某研究院一台DELL存储&#xff0c;15块硬盘搭建的一组RAID5磁盘阵列。 该RAID5阵列只有一个卷组&#xff0c;该卷组占用了阵列的全部空间&#xff1b;该卷组只有一个起始位置为0扇区的XFS裸分区。 服务器故障&初检&分析&#xff1a; 该…

Android前沿技术?Jetpack如何?

Jetpack Compose是Android开发领域的一项前沿技术&#xff0c;它提供了一种全新的方式来构建用户界面。近年来&#xff0c;Jetpack Compose在各大招聘等网站上的招聘岗位逐渐增多&#xff0c;薪资待遇也相应提高。本文将从招聘岗位的薪资与技术要求入手&#xff0c;分析Jetpack…

多线程的创建,复习匿名内部类,Thread的一些方法,以及lambda的变量捕捉,join用法

一、&#x1f49b; Java的Thread类表示线程 1.创建类&#xff0c;继承Thread重写run方法 2.创建类&#xff0c;实现Runnable重写run方法 3.可以继承Thread重写run基于匿名内部类 4.实现Runnable重写run基于匿名内部类 5.lamdba表达式表示run方法的内容&#xff08;推荐&#x…

16-3_Qt 5.9 C++开发指南_使用QStyle 设置界面外观_实现不同系统下的界面效果的匹配

文章目录 1. QStyle的作用&#xff08;实现不同系统下的界面效果的匹配&#xff09;2. Qt内置样式的使用3. 源码3.1 可视化UI设计3.2 mainwindow.cpp 1. QStyle的作用&#xff08;实现不同系统下的界面效果的匹配&#xff09; Qt 是一个跨平台的类库&#xff0c;相同的界面组件…

算法与数据结构-跳表

文章目录 什么是跳表跳表的时间复杂度跳表的空间复杂度如何高效的插入和删除跳表索引动态更新代码示例 什么是跳表 对于一个单链表来讲&#xff0c;即便链表中存储的数据是有序的&#xff0c;如果我们要想在其中查找某个数据&#xff0c;也只能从头到尾遍历链表。这样查找效率…

虚继承中对象占用的内存空间

1、虚继承中对象占用的内存空间1 #include <iostream> using namespace std;class AA {void show() {}int max(int a, int b) { return a > b ? a : b; } }; //函数并不占用内存空间class A {}; //占位符class B {int c; }; //含有一个int型数据成员class C :vi…