自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【无标题】

vscode必备插件ESLintSassPrettier - Code formatterPath IntellisenseJavaScript (ES6) code snippetsError GuttersDocument ThisColor HighlightCodeMoss10.Chinese (Simplified) (简体中文) Language Pack for Visual Studio CodeChatGPT - ChatMoss(CodeMoss)Auto Re

2024-07-19 22:38:51 133

原创 nvm管理工具

nvm全英文也叫node.js version management,是一个nodejs的版本管理工具。nvm和n都是node.js版本管理工具,为了解决node.js各种版本存在不兼容现象可以通过它可以安装和切换不同版本的node.js。

2023-04-12 14:19:32 136

原创 bind、call、apply区别与用法

bind、apple、call区别

2022-08-07 22:38:34 88

原创 http请求码

一、临时响应100——客户必须继续发出请求101——客户要求服务器根据请求转换HTTP协议版本二、成功200——服务器成功返回网页201——提示知道新文件的URL202——接受和处理、但处理未完成203——返回信息不确定或不完整204——请求收到,但返回信息为空205——服务器完成了请求,用户代理必须复位当前已经浏览过的文件206——服务器已经完成了部分用户的GET请求三、重定向300——请求的资源可在多处得到301——删除请求数据302——在其他地址发现了请求数据303——建

2021-03-30 21:16:44 692

原创 HTTP缓存

http 缓存 状态码 完整的http事务过程http缓存完整的http事务过程1、域名解析2、发起TCP的三次握手3、建立TCP连接后发起http请求4、服务器端响应http请求,浏览器得到html码5、浏览器解析html代码,并请求html代码中的资源6、浏览器对页面进行渲染并呈现给客户状态码常见的状态码有哪些?200:请求成功,浏览器会把响应体内容(通常是html)显示在浏览器中;404:(客户端问题)请求的资源没有找到400: 语义有误,当前请求无法被服务器理

2021-03-26 07:39:20 51

原创 sessStorage localStorage cookie区别

sessStorage localStorage cookie区别==localStorage:==是永久的,一直有效,浏览器关闭后也会保存,数据大小在5MB,不参与通信,可以共享。sessionStorage:只在当前有效,关闭后会清除,数据大小在5MB,不参与通信。cookie:数据存在客户端中,单个保存不多于4K;只适合存放小数据,具有扩展、可用性。共同点:都是保存在浏览器中的...

2021-03-25 07:41:46 191

原创 Ajax

Ajax全拼Ajax的全称Asynchronous JavaScript + XML(异步JavaScript和XML)定义:Ajax是一种技术方案,但并不是一种新技术。它依赖现有的CSS/HTML/JavaScript,而其中最核心的依赖是浏览器提供的XMLHttpRequest对象,是这个对象使得浏览器可以发出HTTP请求与接收HTTP响应。实现了在页面不刷新个情况下和服务器进行数据交互请求方法getvar xhr = new XMLHttpRequest()xhr.open('GET'

2021-03-24 07:46:53 54

原创 JS事件

JS事件啥是事件:网页中的每个元素都可以产生某些可以触发 JavaScript 函数的事件。比方说,我们可以在用户点击某按钮时产生一个 onClick 事件来触发某个函数。事件在 HTML 页面中定义。、常见的事件1.鼠标点击2.页面或图像载入3.鼠标悬浮于页面的某个热点之上4.在表单中选取输入框5.确认表单6.键盘按键...

2021-03-23 08:02:47 66

原创 事件

事件什么是事件事件就是在文档中或者在浏览器窗口中通过某些动作触发。比如,单击,鼠标经过,键盘按下等。事件通常和函数结合使用。事件流可以理解为当事件发生时,响应事件的顺序。这个顺序就按照一个流进行的。这就是事件流。这个流是从里向外流,还是从外向里流那??不同的浏览器事件流的流向不太一样。事件冒泡定义:IE提出的事件是事件冒泡,就是事件开始时从最具体的元素接收,然后逐级向上传播到到较为不具体的节点<div id="div"> <button id="btn">点

2021-03-22 07:54:31 69

原创 Dom

Dom在 HTML 中 DOM(文档对象模型)是 Web 前端里最基础、最常用的—模型。例如,一个网页其实就是一个 HTML 文件,经过浏览器的解析,最终呈现在用户面前。什么是DOMDOM 是 Document Object Model(文档对象模型)的缩写。DOM是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。在 HTML DOM中,所有事物都是节点。DOM 是被视为节点树的 HTMLDOM的操作常用的查找节点的方法有:1.document.getElem

2021-03-22 07:47:22 80

原创 Event Loop

Event Loop是什么event loop是一个执行模型,在不同的地方有不同的实现。浏览器和NodeJS基于不同的技术实现了各自的Event Loop。1.NodeJS的Event Loop是基于libuv实现的。可以参考Node的官方文档以及libuv的官方文档。2.libuv已经对Event Loop做出了实现,而HTML5规范中只是定义了浏览器中Event Loop的模型,具体的实现留给了浏览器厂商。js执行顺序一。顺序执行1.从前到后,一行一行执行2.如果有一行执行报错,就会停止下

2021-03-21 21:56:18 39

原创 js同步,异步的区别,Promise的使用

什么是同步异步在传统单线程编程中,程序的运行是同步的。同步不意味着所有步骤同时运行,而是指步骤在一个控制流序列中按顺序执行)定义:JavaScript的单线程浏览器脚本语言,JavaScript的主要用途是与用户互动,以及操作DOM。而异步的概念则是不保证同步的概念,也就是说,一个异步过程的执行将不再与原有的序列有顺序关系。为了利用多核CPU的计算能力,HTML5提出Web Worker标准,允许JavaScript脚本创建多个线程,但是子线程完全受主线程控制,且不得操作DOM。这样我们就可以

2021-03-18 21:57:17 238 1

原创 作用域和自由变量

1,作用域和自由变量全局作用域不在任何函数内声明的变量(函数内省略var的也算全局)称作全局变量就是在最外层定义的变量就被称为全局变量,全局都可以使用,所以是全局作用域。举报作用域在函数内声明的变量具有函数作用域,属于局部变量,就是在函数内部定义的变量,只在函数内部有用,所以是局部作用域。Es6的定义的块级作用域声明变量的方法 有var let constvar 声明的变量可以变量提升 变量提升是将变量的声明提升至当前作用域的最顶部,而变量的赋值不会提升let/const声明的变量让当前

2021-03-17 21:18:19 58

原创 原型和原型链

原型和原型链在js中每个对象都有一个内部属性proto,指向该对象的原型。–原型–在构造函数中有一个prototype属性,是构造函数才有的属性,也叫原型,包含所有实例共享的属性和方法,当创建实例时,该prototype就会作为实例对象的原型proto.–原型链–原型链是一种机制,指的是JavaScript每个对象包括原型对象都有一个内置的[[proto]]属性指向创建它的函数对象的原型对象,即prototype属性类型判断 instanceofinstanceof 运算符是用来测试一个对象是否

2021-03-17 07:47:42 46

原创 vue原理

组件化基础1.很久之前就有组件化asp.jsp.php已经存在组件化,nodejs中也有组件化。但是以前的组件都是静态资源,更新要依赖与DOM,所以以前JQ更盛行2.数据驱动视图(mvvm,settate)( 数据驱动视图要之前用得简单的多)什么是数据驱动视图:数据驱动是vuejs最大的特点。在vuejs中,所谓的数据驱动就是当数据发生变化的时候,用户界面发生相应的变化,开发者不需要手动的去修改dom。mvvm: MVVM是Model-View-ViewModel的简写,即数据-视图-视图模

2021-03-15 20:51:56 59

原创 js数据类型

js数据类型值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)、Symbol。引用数据类型:对象(Object)、数组(Array)、函数(Function)。实现一个简单的三角形元素的border是由三角形组合而成div {width: 0;height: 0;border: 40px solid;border-color: transparent transparent red;}get与post

2021-03-15 08:29:47 42

原创 vue

vue面试题1、v-sho 和 v-if 的区别是什么(1)、当条件为真的时候 没有区别 当条件为假的时候 v-if是不创建元素 v-show 渲染元素然后隐藏掉(2)、v-if更适合数据的筛选和初始渲染, v-show更适合元素的切换2、为何 v-for 中要用 key1.vue中列表循环需加:key=“唯一标识” 唯一标识尽量是item里面id等2.key主要用来做dom diff算法用的3.没有key的时候默认使用的是“就地复用”策略4。标签名一样,key一样这时候就会就地复用,如果标

2021-03-14 20:43:35 67

原创 web前端框架

Web前端需求的技能(心得):1、精通HTML/CSS/JavaScript等前端相关技术;2、掌握DIV CSS流动布局HTML代码编写,了解CSS3、HTML5优先;3、掌握JavaScript语言核心技术DOM、BOM、Ajax、JSON等,熟悉对象化Javascript编程,熟悉Javascript应用框架(如prototype/jQuery/YUI/Ext至少一种);4、熟练使用各种常用JavaScript调试工具,熟悉至少一种流行的JS框架,如jQuery及VUE,有VUE实际项目经验者

2021-03-14 19:45:53 95

原创 性能优化

关于性能优化资源压缩合并,减少http请求1.合并图片(css sprites)、CSS和JS文件合并、CSS和JS文件压缩2. 图片较多的页面也可以使用 lazyLoad 等技术进行优化。3.精灵图等非核心代码异步加载 --> 异步加载的方式 --> 异步加载的区别动态脚本加载使用document.createElement创建一个script标签,即document.createElement(‘script’),然后把这个标签加载到body上面去。2.defer通过异步

2021-01-19 21:11:03 50

原创 promise

promisepromise是什么:1、主要用于异步计算2、可以将异步操作队列化,按照期望的顺序执行,返回符合预期的结果3、可以在对象之间传递和操作 promise,帮助我们处理队列有哪些状态和参数以及原理状态有三个:pending(进行中的状态)也是初始状态fulfilled(成功的状态)** rejected**(失败的状态)原理:promise接收一个回调函数作为参数 该函数中接收两个参数作为参数 一个是resolve另一个是reject使用:resolve是将promise转

2021-01-16 18:52:01 37

原创 动态设置rem

rem适配原理原理:是相对于根元素的font-size计算值的倍数计算方式:屏幕宽度/设计稿宽度*基本宽度=fontsize使用:通过rem+js改变根元素font-size来实现兼容性更高的页面使用JavaScript来动态修改根元素的大小,其他的rem单位会被浏览器转换成px。本质:等比缩放,一般给予宽度缺点:在响应式布局中,必须通过js动态控制字体大小,css和js代码有一定的耦合性,将必须改变字体的代码放在css之前。最简单的rem配置function rem(){

2021-01-14 20:51:58 246

原创 js线程,事件循环,微任务和宏任务

js单线程什么是单线程:JavaScript 语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。就意味着,所有任务需要排队,前一个任务结束,才会执行后一个任务。如果前一个任务耗时很长,后一个任务就不得不一直等着。为什么js是单线程:与它的用途有关。作为浏览器脚本语言,JavaScript 的主要用途是与用户互动,以及操作 DOM。这决定了它只能是单线程,否则会带来很复杂的同步问题。比如,假定JavaScript 同时有两个线程,一个线程在某个 DOM 节点上添加内容,另一个线程删除了这个节点

2021-01-14 20:43:25 125 1

原创 GITHUB

关于github的使用把代码交到远程仓库的操作步骤第一次1.在github上创建仓库,并复制地址2.在自己的本地项目中右键 找到 git bash here3.将自己的GitHub的地址克隆到里面4.把自己的项目复制到新增的文件夹下,在进行 git add .5.git commit -m “描述的信息”6.git push -u origin master ( -u 只是第一次推送的时候加上,在本地仓库和远程仓库产生关联以后,之后的指令就不用再加 -u)第二次git

2021-01-13 20:05:00 50

原创 深拷贝,浅拷贝,深拷贝,浅拷贝,类型校验,递归深拷贝

深拷贝,浅拷贝深拷贝概念:深拷贝复制变量值,对于非基本类型的变量,则递归至基本类型变量后,再复制。 深拷贝后的对象与原来的对象是完全隔离的,互不影响, 对一个对象的修改并不会影响另一个对象。如何实现可以使用:1.object.assign()2.扩展运算符:…3.Array.prototype.slice()4.Array.prototype.concat()5.JSON.stringify()来转换,JSON.parse()来解析浅拷贝概念:浅拷贝是会将对象的每个属性进行依次复制,但

2021-01-13 20:01:26 70

原创 vuex的方法和描述

vuex的方法和描述1.什么是vuex:vuex是一个专门为vue.js应用程序开发的状态管理模式。通俗点说就是我们项目中需要共享的一些数据的管理容器,这里的状态就是数据。2.什么时候会用到vuex:简单的说就是当你在构建一个中大型单页用的时候,需要在组件外部管理状态,这个时候vuex就是最好的选择。3.vuex由哪几部分组成的呢:State:vuex的仓库,存放状态 用法: vuex存放数据的地方Getters:计算属性 用法:似组件的计算属性,计算结果会缓存Mutation

2021-01-12 17:10:51 167

原创 git指令

gitee 常用操作指令小结git init //初始化git仓库管理git status //查看状态git add . //全部添加到缓存区git add ./路径 //单个文件添加到缓存区git commit -m //描述并添加到本地仓库git log //查看提交日志git reflo

2021-01-12 16:50:04 42

原创 冒泡排序

冒泡排序定义:是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素的大小,如果他们的顺序错误就把他们交换过来。重复地走访数列直到没有再需要交换。优缺点:优点:冒泡排序相对来说比较简单缺点:冒泡排序的效率并不是很高 (比如你的数组有N个对象,那么你的数组循环就要把每一个数据都循环到)例子1.中国有一套反导系统,某国向中国发射N枚导弹,导弹系统有一个bug,10000米导弹飞过来,射下来,发射过来[10000,5888,12000,6999,7000,3000,4

2021-01-11 17:18:08 36

原创 递归

递归定义:在数学与计算机科学中,递归(Recursion)是指在函数的定义中使用函数自身的方法。实际上,递归,顾名思义,其包含了两个意思:递 和 归,这正是递归思想的精华所在。 {简单来说就是;指在当前方法内调用自己的这种现象}优缺点:优点:1.递归的优点就是简洁、易于理解。缺点:1.递归通常会出现许多重复计算,导致时间复杂度高。2.调用栈可能会溢出,其实每一次函数调用会在内存栈中分配空间,而每个进程的栈的容量是有限的,当调用的层次太多时,就会超出栈的容量,从而导致栈溢出。模型//

2021-01-11 16:52:54 47

空空如也

空空如也

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

TA关注的人

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