自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 面试题准备(二十九):HTTP 缓存

1. Web 缓存利用 HTTP 缓存来减少访问未被修改的资源,实现页面的快速加载2. HTTP 缓存主要由 强缓存(强制缓存)和协商缓存3. 强制缓存在规定时间内有效,可直接使用,且状态码为 200,若已失效则执行协商缓存4. 协商缓存利用发送给服务器特定字段,由服务器对字段进行校验,来确定是否使用缓存,可使用则状态码为 304

2022-03-08 00:35:18 2008

原创 面试题准备(二十八):cookie、localStorage 和 sessionStorage

概述cookielocalStoragesessionStorage大小4Kb10MB5MB兼容H4、H5H5H5访问任何窗口任何窗口同一窗口有效期手动设置无到窗口关闭存储位置浏览器和服务器浏览器浏览器与请求一起发送是否否语法复杂简易简易HTTP 无状态两次连接同一个服务器,服务器意识不到是同一个用户发送的请求这种缺少状态的方式意味着每次连接服务器都需要传输一部分用户信息,降低了传输的效率

2022-03-04 16:48:25 251

原创 面试题准备(二十七):HTTP 超文本传输协议

文章目录概述发展HTTP/0.9请求过程特点HTTP/1.1请求请求行请求头空行请求体响应状态行请求头空行响应体请求方法响应状态码概述超文本传输协议(Hyper Text Transfer Protocol,HTTP)HTTP 是客户端与服务端通信必须遵守的传输协议客户端要以 HTTP 协议要求的格式把数据提交到服务器服务器要以 HTTP 协议要求的格式把数据响应给客户端发展HTTP/0.9需求是仅用于传输简单的 HTML 文件请求过程根据 IP 地址、端口和服务器建立 T

2022-03-04 10:54:29 2793

原创 面试题准备(二十六):form 表单

2022-03-04 00:28:32 1062

原创 面试题准备(二十五):浏览器页面渲染流程

1. 浏览器请求 HTML 文件,返回后开始解析,构建 DOM2. 遇到请求 CSS 的 link 标签开始请求和解析 CSS,构建 CSSOM,同时继续解析 HTML3. 遇到请求 js 的 script 标签,请求和解析 js 文件并阻塞 HTML 文件的解析4. js 文件和 CSS 文件的返回时间无法确定,但 js 代码的运行要在构建完 CSSOM 之后5. CSSOM 构建完毕开始运行 js,js 将操作 DOM 和 CSSOM6. js 操作完毕继续解析 HTML文件构建 DOM

2022-03-03 13:57:05 256

原创 面试题准备(二十四):行级元素、块级元素

行级/内联元素,内容决定元素所占位置,不可通过 CSS 改变高,可通过内外边距改变宽,块级元素独占一行,可通过 CSS 改变宽高

2022-03-03 08:59:00 160

原创 面试题准备(二十三):使盒子水平垂直居中的五种方法

介绍了 div 盒子居中的五种方法,其中需要设置子元素宽高的有 第二种 定位 + 负边距 第四种 定位 + 外边距自适应

2022-03-02 12:03:52 1620 1

原创 面试题准备(二十二):浮动 float

> 浮动的作用是使元素站队> 浮动元素产生浮动流> 含有浮动流的元素,会被块级元素忽略> 浮动元素可被 BFC,行内元素观察到

2022-03-02 11:01:18 404

原创 面试题准备(二十一):圣杯布局、双飞翼布局

- 圣杯布局和双飞翼布局,都是事先三栏布局的方式,区别在于如何为左右两栏的元素预留位置,以及如何让左右两栏归位- 预留位置:圣杯布局使用中间三个元素的父元素盒子设置左右两侧内边距的方式,而双飞翼布局是使中间内容元素为左右两侧设置外边距- 归位:使用负边距 margin-left: -width; 方式,使元素左移到指定位置

2022-03-01 22:12:21 437

原创 面试题准备(二十):CSS 样式权重

1. 常用选择器优先级:!important > id > class > tag2. 两条样式同时使用 !important 权重高者生效3. 同一个样式,靠后的生效4. 选择器指向同一个元素,权重相同时,按就近原则渲染5. 选择器指向不同元素,按就近原则渲染选择器权重!importantInfinity行间样式1000id100class|属性|伪类10标签|伪元素1通配符0

2022-03-01 19:16:02 223

原创 面试题准备(十七):伪类、伪元素

伪类和伪元素,这一类选择器的数量众多,通常用于很明确的目的伪类用来对用户的某种行为来进行元素选择,而伪元素是在该元素周围以某种方式创建一个元素进行操作,或者选取该元素的某一部分进行操作

2022-02-27 10:32:47 179

原创 面试题准备(十六):CSS 选择器 selector

概念用于在页面中选取我们想要更改样式的元素分类简单选择器:元素选择器、类选择器、ID选择器、通用选择器(通配符选择器)、组合选择器属性选择器伪类、伪元素简单选择器元素选择器用元素的名称进行选择元素div { ...}button { ...}类选择器根据元素的类名选择元素.wrapper { ...}.content { ...}ID 选择器根据元素的 id 选择元素#user { ...}#name { ...}通用选

2022-02-26 18:22:28 221

原创 面试题准备(十五):定位 position

- 文档流就是将元素放在浏览器视窗中的系统,可将放在里面的元素笼统的分为行级元素和块级元素- 所谓定位,就是使得元素脱离文档流进行放置的属性- 静态定位是元素的默认定位方式- 相对定位是相对于原来位置进行定位,虽然元素脱离了原来的位置,但它原来的位置并不会被其它元素占据- 绝对定位脱离原来位置进行定位,元素在离开原来位置后,其位置会被顺延至下一个元素- 固定定位根据视窗进行定位,常用于制作导航栏- z-index 可以确定重叠元素的排列顺序

2022-02-26 17:40:01 494

原创 面试题准备(十四):BFC 块级格式化上下文

BFC 即块级格式化上下文,简单来说就是形成自我的小天地,小天地内的元素与外界元素互不干扰,且有特殊的规则,即在与浮动有重叠时,它将把自己变窄,计算高度时,也会将内部子级元素的高度计算进去

2022-02-26 16:06:21 269

原创 面试题准备(十三):盒子模型

介绍了标准盒模型和 IE 盒模型,分析了盒子模型的两个缺陷/bug:margin 塌陷和 margin 合并,并给出了解决办法

2022-02-25 22:21:08 1104

原创 面试题准备(十):var、let、const 区别

var、let、const 三种变量声明方式的区别,主要在能否重复定义,能否变量提升,值能否修改,能否形成块作用域,可否运用于循环中

2022-02-24 17:51:14 372

原创 面试题准备(九):函数柯里化

概念柯里化是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数的技术第一个例子 — 参数复用// 普通封装方法// 一次传入三个参数,但像协议 protocol 这种可以复用的参数就需要传入多次function URI(protocol, hostname, pathname) { return `${protocol}${hostname}${pathname}`}// 运用柯里化封装一个 URI 函数// 这样封装

2022-02-24 16:22:25 820

原创 面试题准备(八):call、apply 和 bind

call、apply 和 bind 的主要作用,都是改变当前对象的执行期上下文;区别是,call 和 apply 是立即执行的,只在参数传递方式上有区别,而 bind 返回一个函数引用,需要加上执行符号才能执行

2022-02-24 10:29:59 529

原创 面试题准备(七):立即执行函数

立即执行函数没有声明,在执行一次后释放,针对初始化功能的函数只有表达式才会被执行符号 () 执行先看两种情况function foo() { console.log('我会执行吗?') }()function foo() { console.log('现在我会执行吗?') }(1)揭晓结果第一种情况是一个函数声明后紧跟一个括号,而要执行函数应该是函数引用+括号,显然不能实现执行函数。此时这个括号仅仅是表达运算计算次序的符号第二种情况,表示执行括号中的表达式,对执行左侧声明的

2022-02-24 00:44:16 337

原创 面试题准备(六):this 指向

执行期上下文三个重要属性变量对象 — Variable Object VO作用域链 — Scope Chainthisthis函数预编译过程中 this 指向 window全局作用域中 this 指向 windowcall 和 apply 可以改变函数运行时 this 的指向obj.func()、func() 里面的 this 指向 obj箭头函数中,this 指向其所在作用域,无论谁调用试一试// 分析以下代码执行结果var name = '222'var a =

2022-02-23 18:45:31 239

原创 面试题准备(五):闭包

闭包定义 一 — 内部函数总是可以访问其所在的外部函数中声明的参数和变量,即使在其外部函数被返回(寿命终结)了之后。定义 二 — 1. 即使创建它的上下文已经销毁,它仍然存在(比如,内部函数从父函数中返回)2. 在代码中引用了自由变量广义闭包:所有的函数。因为它们都在创建的时候就将上层上下文的数据保存起来了。哪怕是简单的全局变量也是如此,因为函数中访问全局变量就相当于是在访问自由变量,这个时候使用最外层的作用域。复习 — 函数执行过程var scope = "global scope"fun

2022-02-23 16:59:55 350

原创 面试题准备(四):作用域、作用域链

作用域执行期上下文:变量对象 VO、作用域链 Scope、this作用域 :[[scope]] 存储执行期上下文集合,函数创建时,就会保存所有父变量到其中作用域链:[[scope]] 中的执行期上下文集合呈链式连接,这种连接称为作用域链function fun1() { function fun2() {}}// 函数创建时 分析以上两个函数的作用域fun1.[[scope]] = { GO}fun2.[[scope]] = { fun1.AO GO}// 函数激活时

2022-02-23 11:38:02 351

原创 面试题准备(三):执行期上下文

文章目录执行期上下文运行三部曲预编译四部曲执行期上下文当函数开始执行前一刻,会做一些准备工作,先创建一个称为执行期上下文的内部对象执行期上下文定义了函数执行时的环境多次调用一个函数会创建多个执行期上下文,函数执行完毕即销毁运行三部曲JavaScript 单线程的解释性语言语法分析预编译解释执行预编译四部曲创建 AO — Activation Object 对象,即执行期上下文寻找形参和变量声明,将变量和形参都作为 AO 的属性名,值设为 undefined形参实参相统

2022-02-23 00:15:19 299

原创 面试题准备(二):继承的多种方式及优缺点

文章目录原型链继承借用构造函数 --- 经典继承组合继承 --- 最常用原型式继承寄生式继承寄生组合式继承原型链继承// 在 Father 构造函数中声明默认属性function Father() { this.age = 13}// 在 Father 的原型中定义方法Father.prototype.getAge = function () { console.log(this.age)}// 将 Son 的原型设为 Father 的实例 --- 继承function Son() {

2022-02-22 22:26:32 137

原创 面试题准备(一):原型、原型链

文章目录原型原型

2022-02-22 01:00:53 2100

原创 操作系统进程Process

进程(Process)多道程序环境下,程序失去封闭性,并具有间断性和不可再现性概念进程控制块(PCB)——描述进程的基本情况和运行状态创建进程——创建PCB撤销进程——撤销PCB进程映像(进程实体)PCB是进程存在的唯一标识进程是进程实体的运行过程,是系统进行资源分配和调度的独立单位特征动态性:最基本特征并发性:多个进程实体同时存在,同时并发执行独立性:进程是独立运行、独立获得资源、独立接受调度的基本单位异步性:进程的推进速度不可预知.

2021-06-29 00:39:31 216

原创 操作系统运行机制

操作系统运行机制两种状态OS内核程序——内核态(核心态、管态)——特权指令(IO、中断)应用程序——用户态(目态)内核时钟管理——计时——时钟中断置时钟需要硬件协助中断机制原语处于OS最底层,接近硬件具有原子性——执行必须一气呵成运行时间短、调用频繁系统控制的数据结构及处理进程管理——PCB…存储器管理——内存分配表…设备管理——设备控制块…...

2021-06-29 00:04:53 53

原创 OS系统调用(访管指令、trap)

系统调用功能设备管理进程管理进程通信内存管理文件管理处理机状态切换请求OS服务、即系统调用产生一次中断产生一个错误状态企图使用特权指令

2021-06-28 23:53:21 2096

原创 中断、异常

中断、异常中断(Interrupting)<->外中断来自CPU执行指令之外的时间发生IO中断时钟中断…异常(Exception)<->内中断<->例外<->陷入(trap)来自CPU的事件非法操作算术溢出…中断处理过程1.关中断:保护现场的过程不应再响应中断请求2.保存断点:保存程序计数器(PC)以在中断服务程序执行完过后正确返回源程序3.中断服务程序寻址:取出该程序入口地址送入PC4.保存现场及屏蔽字:一般保存程序状.

2021-06-28 23:33:28 251

原创 操作系统发展与分类

2021-06-28 00:20:58 53

原创 操作系统特征、目标及功能

2021-06-28 00:06:59 64

原创 《大话数据结构》从零开始 —— 第五章:串②(两种匹配算法 总结)

文章目录串匹配算法朴素的模式匹配算法KMP模式匹配算法总结回顾串匹配算法朴素的模式匹配算法KMP模式匹配算法总结回顾

2020-08-24 23:16:16 200

原创 《大话数据结构》从零开始 —— 第五章:串①(定义 比较 抽象数据类型 两种存储结构 )

文章目录串串的定义串的比较串的抽象数据类型串的存储结构顺序存储结构串的链式存储结构串串的定义串(string)是由零个或多个字符组成的有限序列,又称字符串串一般记为 s = "a1a2······an" (n >= 0)串中的字符数目 n 称为串的长度空串(null string):零个字符的串一些概念空格串: 只包含空格的串,与空串相区别,空格串有内容有长度,只不过为空格而已子串: 串中任意个数的连续字符组成的子序列称为该串的子串主串: 包含子串的串串的比较

2020-08-22 23:56:33 174

原创 C++ Primer从零开始 —— C++基础:变量和基本类型之变量(定义 声明 标识符 作用域)

变量

2020-08-21 22:35:42 541

原创 C++ Primer从零开始 —— C++基础:变量和基本类型之复合类型①引用

文章目录复合类型复合类型

2020-08-21 22:33:36 429

原创 《大话数据结构》从零开始 —— 第四章:栈与队列之栈(定义、代码实现、应用)

文章目录栈与队列栈栈的定义进栈出栈变化形式栈的抽象数据类型栈的顺序存储结构及实现栈的顺序存储结构进栈(入栈、压栈)、出栈(弹栈)两栈共享空间栈的链式存储结构及实现栈的连式存储结构入栈、出栈栈的应用递归经典递归:斐波那契数列递归定义四则运算表达式求值后缀(逆波兰)表示法定义后缀表达式运算结果中缀表达式 转 后缀表达式总结栈与队列栈栈的定义栈(stack)是限定仅在表尾进行插入和删除操作的线性表允许插入删除一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈栈

2020-08-21 00:00:23 581

原创 《大话数据结构》从零开始 —— 第三章:线性表之链式存储结构 (单链表、静态链表、双向链表、循环链表)

文章目录链式存储结构单链表单链表的读取插入 删除整表创建 整表删除单链表 与 顺序存储结构 的优缺点静态链表循环链表双向链表总结链式存储结构为了表示每个数据 ai 与其直接后继数据元素 a_(i+1) 之间的逻辑关系,对于数据元素 ai 来说,除了存储其本身的信息之外,还需存储一个指示其直接后继的信息(即直接后继的存储位置)。存储数据元素信息的域称为数据域存储直接后继位置的域称为指针域指针域中存储的信息称作指针或链两部分组成的数据元素 ai 的存储映像,称为结点(Node)

2020-08-19 23:54:59 872

原创 《大话数据结构》从零开始 —— 第三章:线性表之顺序存储结构(数组 线性表代码实现)

文章目录线性表线性表的抽象数据类型顺序存储结构插入 删除优缺点线性表线性表(List):零个或多个数据元素的有限序列一个复杂的线性表中,一个数据元素可由若干个数据项组成线性表的抽象数据类型ADT 线性表(List)data ...Operation ...endADT线性表的数据对象集合为 {a1, a2, …, an} ,每个元素的类型均为 DataType除第一个元素 a1 外,每个元素有且只有一个直接前驱元素除最后一个元素 an 外,每个元素有且只有一个直接后继元素

2020-08-18 23:47:07 251

原创 《大话数据结构》从零开始 —— 第二章:算法

文章目录算法定义特性算法设计的要求算法效率的度量方法函数的渐进增长算法的时间复杂度推导 大 O 阶方法常见时间复杂度最坏情况 与 平均情况算法空间复杂度总结算法定义算法(Algorithm):算法是解决特定问题求解步骤的描述在计算机中表现为指令的有序序列并且每条指令表示一个或多个操作特性五个基本特性:输入、输出、有穷性、确定性以及可行性1、 输入输出算法有零个输入或多个输入,至少有一个或多个输出2、 有穷性在算法执行有限个步骤之后,自动结束而不会出现无限循环,并且每个

2020-08-17 21:27:31 226

原创 C++ Primer从零开始 —— C++基础:变量和基本类型之基本内置类型

基本内置类型

2020-08-17 17:24:57 389

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除