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

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读取并执行程序。

🐇进程与线程

  • 详见操作系统笔记

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

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

相关文章:

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

学习视频&#xff1a;尚硅谷2023版Node.js零基础视频教程&#xff0c;nodejs新手到高手 文章目录 &#x1f4da;关于Node.js&#x1f407;为什么要学Node.js&#x1f407;Node.js是什么&#x1f407;Node.js的作用&#x1f407;Node.js下载安装&#x1f407;命令行工具&#x1…...

Canal+Kafka实现Mysql数据同步

Canal介绍 canal [kənl]&#xff0c;译意为水道/管道/沟渠&#xff0c;主要用途是基于 MySQL 数据库增量日志解析&#xff0c;提供增量数据订阅和消费 canal可以用来监控数据库数据的变化&#xff0c;从而获得新增数据&#xff0c;或者修改的数据。 canal是应阿里巴巴存在杭…...

K8s部署

K8s部署 一、实验架构 二进制搭建 Kubernetes v1.20 -单master节点部署k8s集群master01&#xff1a;192.168.111.10 kube-apiserver kube-controller-manager kube-scheduler etcd k8s集群master02&#xff1a;192.168.111.20k8s集群node01&#xff1a;192.168.111.20 kubele…...

MongoDB 分片集群

在了解分片集群之前&#xff0c;务必要先了解复制集技术&#xff01; 1.1 MongoDB复制集简介 一组Mongodb复制集&#xff0c;就是一组mongod进程&#xff0c;这些进程维护同一个数据集合。复制集提供了数据冗余和高等级的可靠性&#xff0c;这是生产部署的基础。 1.1.1 复制集…...

CSDN 编程竞赛六十九期题解

竞赛总览 CSDN 编程竞赛六十九期&#xff1a;比赛详情 (csdn.net) 竞赛题解 题目1、S数 如果一个正整数自身是回文数&#xff0c;而且它也是一个回文数的平方&#xff0c;那么我们称这个数为S数。现在&#xff0c;给定两个正整数L、R&#xff0c;返回包含在范围 [L, R] 中S…...

vue3组合式api单文件组件写法

一&#xff0c;模板部分 <template><div class"device container"><breadcrumb :list"[首页, 应急处置]" /><div class"search_box"><div class"left"><span style"margin-right: 15px"…...

Unity游戏源码分享-多角色fps射击游戏

Unity游戏源码分享-多角色fps射击游戏 项目地址&#xff1a;https://download.csdn.net/download/Highning0007/88204023...

在Cesium中给管道添加水流效果

添加效果前后对比&#xff1a; 关键代码&#xff1a; /*** 水流粒子&#xff0c;目前支持向上或者向下的效果* param {Number} x* param {Number} y* param {Number} z* param {Number} options* example* options {* color: Cesium.Color.AZURE,* emissionRate: 5, …...

测试平台——项目模块模型类设计

这里写目录标题 一、项目应用1、项目包含接口:2、创建子应用3、项目模块设计a、模型类设计b、序列化器类设计c、视图类设计d、项目的增删改查操作4、接口模块设计a、模型类设计b、序列化器类设计c、视图类设计d、接口的增删改查查操作5、环境模块设计a、模型类设计b、序列化器…...

【Android】MVC,MVP,MVVM三种架构模式的区别

MVC 传统的代码架构模式&#xff0c;仅仅是对代码进行了分层&#xff0c;其中的C代表Controller&#xff0c;控制的意思 将代码划分为数据层&#xff0c;视图层&#xff0c;控制层&#xff0c;三层之间可以任意交互 MVP MVP是在MVC基础上改进而来的一种架构&#xff0c;其中的…...

代码质量检查工具SonarQube

Devops流水线之SonarQube 文章目录 Devops流水线之SonarQube1. 软件功能介绍及用途2. 软件环境搭建与使用2.1 使用方法2.2 SonarQube相关属性说明2.3 Sonar配置文件内容说明 3. 使用环节4. 检查方法 1. 软件功能介绍及用途 SonarQube是一个用于代码质量管理的开源平台&#xf…...

开发命名规范

1项目命名规范 1、工程项目名&#xff0c;尽量想一些有意义、有传播价值的名称&#xff1b;比如星球、游戏、名人、名地名等&#xff1b;取名就跟给孩子取名一样&#xff0c;独特、有价值、有意义、好传播 2、所有的类都必须添加创建者和创建日期 3、所有代码&#xff1a;包括…...

12. Redis分布式高可用集群搭建

文章目录 Redis分布式高可用集群搭建一、redis集群有三种方式&#xff1a;1. 主从模式2. 哨兵3. 集群&#xff08;master-cluster&#xff09; 二、基于centos7操作系统操做1. 关闭防火墙&#xff0c;三台机器都执行2. hostname修改&#xff0c;三台机器都执行,这一步是为了在内…...

【微信小程序篇】-请求封装

最近自己在尝试使用AIGC写一个小程序&#xff0c;页面、样式、包括交互函数AIGC都能够帮我完成(不过这里有一点问题AIGC的上下文关联性还是有限制&#xff0c;会经常出现对于需求理解跑偏情况&#xff0c;需要不断的重复强调&#xff0c;并纠正错误&#xff0c;才能得到你想要的…...

区块链-Web3.0-什么是Web3.0?

一、什么是Web 3.0 Web 3.0&#xff0c;也被称为“去中心化Web”或“智能Web”&#xff0c;是互联网的下一代&#xff0c;它使用了分布式系统技术、区块链技术和智能合约等新型技术&#xff0c;旨在构建一个更加去中心化、安全、透明和智能的互联网。Web 3.0 可以带来更广泛的…...

动手学深度学习(三)线性神经网络—softmax回归

分类任务是对离散变量预测&#xff0c;通过比较分类的概率来判断预测的结果。 softmax回归和线性回归一样也是将输入特征与权重做线性叠加&#xff0c;但是softmax回归的输出值个数等于标签中的类别数&#xff0c;这样就可以用于预测分类问题。 分类问题和线性回归的区别&#…...

ios swift alert 自定义弹框 点击半透明部分弹框消失

文章目录 1.BaseAlertVC2.BindFrameNumAlertVC 1.BaseAlertVC import UIKitclass BaseAlertVC: GLBaseViewController {let centerView UIView()override func viewDidLoad() {super.viewDidLoad()view.backgroundColor UIColor(displayP3Red: 0, green: 0, blue: 0, alpha:…...

HCIP STP(生成树)

目录 一、STP概述 二、生成树协议原理 三、802.1D生成树 四、STP的配置BPDU 1、配置BPDU的报文格式 2、配置BPDU的工作过程 3、TCN BPDU 4、TCN BPDU的工作过程 五、STP角色选举 1、根网桥选举 2、根端口选举 3、指定端口选举 4、非指定端口选举 六、STP的接口状…...

【Unity开发必备】100多个 Unity 学习网址 资源 收藏整理大全【持续更新】

Unity 相关网站整理大全 众所周知&#xff0c;工欲善其事必先利其器&#xff0c;有一个好的工具可以让我们事半功倍&#xff0c;有一个好用的网站更是如此&#xff01; 但是好用的网站真的太多了&#xff0c;收藏夹都满满的(但是几乎没打开用过&#x1f601;)。 所以本文是对…...

Alpine Ridge控制器使其具备多种使用模式 - 英特尔发布雷电3接口:竟和USB Type-C统一了

同时又因为这建立在Type-C的基础上&#xff0c;雷电3也将利用现有的标准Type-C线缆引入有源支持。当使用Type-C的线缆时&#xff0c;雷电的速度就降到了20Gbps全双工——这与普通的Type-C的带宽相同——这是为了成本牺牲了一些带宽。可以比较一下&#xff0c;Type-C线的成本只有…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 &#xff08;1&#xff09;连接查询&#xff08;JOIN&#xff09; 内连接&#xff08;INNER JOIN&#xff09;&#xff1a;返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

RocketMQ延迟消息机制

两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数&#xff0c;对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后&#xf…...

【JavaEE】-- HTTP

1. HTTP是什么&#xff1f; HTTP&#xff08;全称为"超文本传输协议"&#xff09;是一种应用非常广泛的应用层协议&#xff0c;HTTP是基于TCP协议的一种应用层协议。 应用层协议&#xff1a;是计算机网络协议栈中最高层的协议&#xff0c;它定义了运行在不同主机上…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用&#xff1a;实现组件通用属性的渐变过渡效果&#xff0c;提升用户体验。支持属性&#xff1a;width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项&#xff1a; 布局类属性&#xff08;如宽高&#xff09;变化时&#…...

系统设计 --- MongoDB亿级数据查询优化策略

系统设计 --- MongoDB亿级数据查询分表策略 背景Solution --- 分表 背景 使用audit log实现Audi Trail功能 Audit Trail范围: 六个月数据量: 每秒5-7条audi log&#xff0c;共计7千万 – 1亿条数据需要实现全文检索按照时间倒序因为license问题&#xff0c;不能使用ELK只能使用…...

【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表

1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...

Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理

引言 Bitmap&#xff08;位图&#xff09;是Android应用内存占用的“头号杀手”。一张1080P&#xff08;1920x1080&#xff09;的图片以ARGB_8888格式加载时&#xff0c;内存占用高达8MB&#xff08;192010804字节&#xff09;。据统计&#xff0c;超过60%的应用OOM崩溃与Bitm…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象&#xff1a;mysql已经安装&#xff0c;但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时&#xff0c;可能是因为以下几个原因&#xff1a;1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...

解读《网络安全法》最新修订,把握网络安全新趋势

《网络安全法》自2017年施行以来&#xff0c;在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂&#xff0c;网络攻击、数据泄露等事件频发&#xff0c;现行法律已难以完全适应新的风险挑战。 2025年3月28日&#xff0c;国家网信办会同相关部门起草了《网络安全…...