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.rhkb.cn/news/84493.html

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

相关文章

测试开发之前端篇-Web前端简介

自从九十年代初&#xff0c;人类创造出网页和浏览器后&#xff0c;Web取得了长足的发展&#xff0c;如今越来越多的企业级应用也选择使用Web技术来构建。 前面给大家介绍网络协议时讲到&#xff0c;您在阅读这篇文章时&#xff0c;浏览器是通过HTTP/HTTPS协议向服务器发送请求…

taro h5列表拖拽排序 --- sortablejs 和 react-sortable-hoc

描述&#xff1a;列表&#xff0c;拖拽排序&#xff0c;只测试了h5 一、sortablejs 文档&#xff1a;http://www.sortablejs.com/ 1.安装sortablejs 2、引入 import Sortable from sortablejs3、页面 const [list, setList] useState([{id: item-1,content: 选项1 }, {id…

JAVA集合框架 一:Collection(LIst,Set)和Iterator(迭代器)

目录 一、Java 集合框架体系 1.Collection接口&#xff1a;用于存储一个一个的数据&#xff0c;也称单列数据集合&#xff08;single&#xff09;。 2.Map接口&#xff1a;用于存储具有映射关系“key-value对”的集合&#xff08;couple&#xff09; 3.Iterator接口&#…

【java】java项目在idea中Build Project或Rebuild Project一直进行不完

问题场景 我项目进行重新构建的时候&#xff0c;项目构建到某一个位置就一直不动了 解决方法 1.清理idea缓存 2.加大idea的内存 File -> Setting

解决 “fatal: Could not read from remote repository.

问题描述&#xff1a; 在使用Git将本地仓库推送到远程仓库或将远程仓库克隆到本地的时候&#xff0c;发生了如下错误&#xff1a;“fatal: Could not read from remote repository.” 原因分析&#xff1a; 出现这错误一般是以下两种原因&#xff1a; 客户端与服务端未生成 …

Golang bitset 基本使用

安装&#xff1a; go get github.com/bits-and-blooms/bitset下面代码把fmtx换成fmt就行 //------------基本操作------------//构建一个64bit长度的bitsetb : bitset.New(64)//放入一个数b.Set(10)fmtx.Println("add-10&#xff1a;", b.DumpAsBits()) // 0000000…

MongoDB 分片集群

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

Android Camera预览画面变形问题

csdn 问题 安卓camera1在预览时&#xff0c;预览画面看起来被拉伸了&#xff0e; 如图&#xff0c;圆形的盖子&#xff0c;变成椭圆形了&#xff0e; 代码 默认流程&#xff0c;如下为大致的打开摄像头并进行预览显示的代码 private Camera mCamera null; private Surfa…

逆向破解学习-单机斗地主

试玩 破解思路 9000 是成功的代码 Hook代码 import de.robv.android.xposed.XC_MethodHook; import de.robv.android.xposed.XposedHelpers; import de.robv.android.xposed.callbacks.XC_LoadPackage; public class HookComJuneGameDouDiZhu extends HookImpl{ Override p…

个人用C#编写的壁纸管理器 - 开源研究系列文章

今天介绍一下笔者自己用C#开发的一个小工具软件&#xff1a;壁纸管理器。 开发这个小工具的初衷是因为Windows操作系统提供的功能个人不满意&#xff0c;而且现在闲着&#xff0c;所以就随意写了个代码。如果对读者有借鉴参考作用就更好了&#xff0c;能够直接代码段复用即可。…

Java课题笔记~ ServletContext

单个Servlet的配置对象 web.xml <servlet><servlet-name>FirstServlet</servlet-name><servlet-class>com.ambow.test.FirstServlet</servlet-class><init-param><param-name>charset</param-name><param-value>utf-8&…

竞赛项目 疫情数据分析与3D可视化 - python 大数据

文章目录 0 前言1 课题背景2 实现效果3 设计原理4 部分代码5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 大数据全国疫情数据分析与3D可视化 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff0…

渗透攻击方法:原型链污染

目录 一、什么是原型链 1、原型对象 2、prototype属性 3、原型链 1、显示原型 2、隐式原型 3、原型链 4、constructor属性 二、原型链污染重现 实例 Nodejs沙箱逃逸 1、什么是沙箱&#xff08;sandbox&#xff09; 2、vm模块 一、什么是原型链 1、原型对象 JavaS…

EditPlus连接Linux系统远程操作文件

EditPlus是一套功能强大的文本编辑器&#xff01; 1.File ->FTP->FTP Settings&#xff1b; 2.Add->Description->FTP server->Username->Password->Subdirectory->Advanced Options 注意&#xff1a;这里的Subdirectory设置的是以后上传文件的默认…

基于grpc从零开始搭建一个准生产分布式应用(系列)

花了点时间先把程序代码完全写完了&#xff0c;加了这个章节。因为后续章节是连续的&#xff0c;没有一个总纲同学们难免看的云里雾里的。本章先描述下完整的源码如何运行以及工程的结构。此专题大概由30章组成&#xff0c;真正的从0开始&#xff0c;框架是在原生产环境中抽取的…

Metamask登录方式集成

Metamask登录 https://www.toptal.com/ethereum/one-click-login-flows-a-metamask-tutorial#how-the-login-flow-works 参考&#xff1a; https://zh.socialgekon.com/one-click-login-with-blockchain 后端需要在用户表中增加address和nonce字段。兼容其他登录方式&#xff0…

【Maven】依赖范围、依赖传递、依赖排除、依赖原则、依赖继承

【Maven】依赖范围、依赖传递、依赖排除、依赖原则、依赖继承 依赖范围 依赖传递 依赖排除 依赖原则 依赖继承 依赖范围 在Maven中&#xff0c;依赖范围&#xff08;Dependency Scope&#xff09;用于控制依赖项在编译、测试和运行时的可见性和可用性。通过指定适当的依赖…

Pycharm 双击启动失败?

事故 双击 Pycharm 后&#xff0c;出现加载工程&#xff0c;我不想加载这个工程&#xff0c;就点击了弹出的 cancle 取消按钮。然后再到桌面双击 Pycharm 却发现无法启动了。哪怕以管理员权限运行也没用&#xff0c;就是不出界面。 原因未知 CtrlshiftESC 打开后台&#xff…

恒盛策略:沪指冲高回落跌0.26%,酿酒、汽车等板块走弱,燃气股拉升

10日早盘&#xff0c;两市股指盘中冲高回落&#xff0c;半日成交约4200亿元&#xff0c;北向资金净卖出超20亿元。 到午间收盘&#xff0c;沪指跌0.26%报3235.9点&#xff0c;深成指跌0.54%&#xff0c;创业板指跌0.28%&#xff1b;两市算计成交4202亿元&#xff0c;北向资金净…

plt绘制实测值与预测值的散点图

# -*- coding: utf-8 -*- import numpy as np import matplotlib.pyplot as plt from matplotlib.pyplot import MultipleLocator""" 输出观测值和模型预测值之间的拟合曲线,即拟合模型 决定系数R2&#xff0c;有拟合曲线公式&#xff0c;有1:1线 ""&…