自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 http

1.状态码1xx服务器收到请求2xx请求成功,比如2003xx重定向,如3024xx客户端错误,比如4045xx服务端错误,比如500一、临时响应100——客户必须继续发出请求101——客户要求服务器根据请求转换HTTP协议版本二、成功200——服务器成功返回网页201——提示知道新文件的URL202——接受和处理、但处理未完成203——返回信息不确定或不完整204——请求收到,但返回信息为空205——服务器完成了请求,用户代理必须复位当前已经浏览过的文件206——服务器

2021-03-25 21:29:12 316 2

原创 存储

1.sessionStorage,localStorage,cookie 的区别Cookie存储数据 window.document.cookie = ‘xxx’;取出数据 document.cookie共同点:都是保存在浏览器端、且同源的 区别: 1、cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递,而sessionStorage和localStorage不会自动把数据发送给服务器,仅在本地保存。cookie数据还有路

2021-03-24 20:44:29 114

原创 ajax

1. 手写一个简易的AJAX// get 请求// 创建 xhr 对象const xhr = new XMLHttpRequest();// XMLHttpRequest.open() 方法初始化一个请求// 原始API:xhr.open(method, url, async);// method:要是用的HTTP方法,url:请求的主体,async(可选):false为同步,true为异步,默认为同步xhr.open('GET', '/api', false);// 只要 readySt

2021-03-23 21:11:51 128 1

原创 面试题⑩

1.navigator移动应用很少只包含一个页面。从你添加第二个页面开始,就得考虑如何管理多个页面间的跳转了。导航器正是为此而生。它可以管理多个页面间的跳转,也包含了一些常见的过渡动画,包括水平翻页、垂直弹出等等。2.sereenSereen:屏幕 也是window下面的一个对象,在使用的时候可以用window.screen也可以忽略window屏幕的常用属性:高,宽;可用宽与可用高(可用高不包括任务栏)3.locationlocation属性一般引用自Location对象,可以用于获取或

2021-03-21 21:42:54 104

原创 面试题⑧

异步:异步 async 是相对于同步 async 而言的,同步就是一件事一件事的执行。只有前一个任务执行完毕,才能执行后一个任务。同步任务:指的是在主线程上排队执行的任务,只有前一个任务执行完毕,才能执行后一个任务。异步任务:指的是不进入主线程,某个异步任务可以执行了,该任务才会进入主线程执行。同步和异步任务在不同的执行"场所",同步的进入主线程,异步的进入Event Table执行并注册函数。js中使用:当JS解析执行时,会被引擎分为两类任务,同步任务(synchronous) 和 异

2021-03-21 21:05:03 138

原创 面试题⑥

this的不同应用场景,如何取值?使用场景作为普通函数使用call apply bind作为对象方法被调用箭头函数在class方法在中被调用this取什么值是在函数执行的时候确定的,不是在函数定义的时候确定的function fn1() { console.log(this)}fn1()//windowfn1.call({x:100})//{x:100}const fn2 = fn1.bind({X:200})fn2()//{x:200}const zhang.

2021-03-17 19:23:18 81

原创 面试⑤

原型和原型链1.原型的概念:JavaScript 的所有对象中都包含了一个 [proto] 内部属性,这个属性所对应的就是自身的原型,除了原型 [proto] 之外,还有 prototype 属性,当函数对象作为构造函数创建实例时,该 prototype 属性值将被作为实例对象的原型 [proto]原型链的概念:每个对象都有一个__proto__属性,当我们访问一个对象的属性时,如果该对象内部不存在这个属性,那么就会去它的__proto__属性所指向的那个对象(可以理解为父对象)里找,如果父对

2021-03-16 20:47:02 67

原创 面试题④

变量类型和计算typeof能判断哪些类型何时使用=== 何时使用==值类型和引用类型的区别//值类型let a = 100let b = aa = 200console.log(b)//100//引用类型let a = {age:20}let b= ab.age= 21console.log(a.age)//214.手写深拷贝...

2021-03-15 19:13:58 69

原创 VUE的使用

VUE使用安装vue-clinpm install -g @vue/cli4.创建vue项目1)第一种方式:vue create hello-world2)第二种方式:vue ui浏览器打开:http://localhost:80003)创建Vue项目VUE基本使用1. vue的使用要从创建Vue对象开始let vm = new Vue();2.创建vue对象创建vue对象的时候,需要传递参数,是json对象,json对象对象必须至少有两个属性成员 let vm = new V

2021-03-14 21:15:55 420

原创 前端面试技巧和注意事项

受疫情影响,很多HR面试越来越多从线下转到线上。“金三银四”招聘旺季,线上面试一样也可以抓住很多的人才。简历(附带写简历的注意事项)笔试(附带笔试题详细介绍的链接)电话面试(附带常见的面试题)面试(详细介绍面试时的注意事项)签约(详细介绍签合同之前要了解的东西)面试时的基本礼仪(详细介绍面试时所应有的行为举止,穿着等)一:面试流程及问题解析无论是程序员还是其他职业的面试,虽然都是提交简历、电话面试、面谈、拿到offer等一系列过程,但是每一步都很重要!首先简历要精炼、漂亮、大方,尽量突出

2021-03-14 20:54:52 1133 3

原创 关于面试

面试题学习前提了解javascript和ES6的基本语法用过vue react 和Webpack做过一些项目前端面试流程基础知识1.拿到面试题 先看考点2.遇到做不完的题 题可变,考点不变3.对待题目 从题目到知识点 再到题目知识点介绍框架面试1.关于vuevue 基本使用vue高级特性vue原理2.关于Reactreact 基本使用react 高级特性3.关于webpackwebpack配置性能优化注意事项讲原理,不讲源码不是实战项目解读项目设计的

2021-03-14 20:12:16 85

原创 vue项目性能优化

一、基础优化(代码以及编码规范)1、v-if 和 v-for区分使用场景v-if=false时不渲染DOM,v-show会预渲染DOM,注意区分使用v-for 遍历必须为 item 添加 key,且避免同时使用 v-ifv-for 遍历必须为 item 添加 key在列表数据进行遍历渲染时,需要为每一项 item 设置唯一 key 值,方便 Vue.js 内部机制精准找到该条列表数据。当 state 更新时,新的状态值和旧的状态值对比,较快地定位到 diff 。v-for 遍历避免同时使用 v

2021-01-19 20:05:34 199

原创 Promise使用能解决的问题,async的使用

Promise使用能解决的问题一、什么是Promise?我们用Promise来解决什么问题?Promise 是异步编程的一种解决方案: 从语法上讲,promise是一个对象,从它可以获取异步操作的消息;从本意上讲,它是承诺,承诺它过一段时间会给你一个结果。 promise有三种状态: pending(等待态),fulfiled(成功态),rejected(失败态);状态一旦改变,就不会再变。创造promise实例后,它会立即执行为什么有Promises这个东西同步的方式写异步的代码,用来解决回调

2021-01-16 20:01:08 564

原创 rem 针对设计稿宽度,设计rem调试比例

remrem是css单位,rem是根据根html元素的字体大小来计算单位的。浏览器默认的 html font-size=16px, 这样如果我们需要设置字体的大小为12px, 通过计算可知 12 / 16 = 0.75;因此只需要设置 font-size= 0.75rem。1、现在页面上设置用户禁止缩放 引入meta头部标签<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1,

2021-01-14 21:44:53 323

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

同步任务 异步任务同步任务:立即执行异步任务:进入到异步队列当中(Event Queue)eg:Ajax,SetTimeout,then,SetIntervalEvent loop 事件循环Task:Macro Task(宏任务) Micro Task(微任务)Macro Task(宏任务):script( 整体代码)、setTimeout、setInterval、I/O、UI 交互事件、setImmediate(Node.js 环境)Micro Task(微任务):Promise、Mutaio

2021-01-14 20:36:03 90 1

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

一、什么是深拷贝,浅拷贝,如何实现值传递:javascript 有五种基本的数据类型 分别是 Boolean null undefined string number这些基本数据赋值的时候是通过值传递的方式 栈内存地址传递 引入的数据类型(object)指向堆内存的首地址深拷贝和浅拷贝是针对复杂数据类型来说的,浅拷贝只拷贝一层,而深拷贝是层层拷贝。深拷贝深拷贝复制变量值,对于非基本类型的变量,则递归至基本类型变量后,再复制。 深拷贝后的对象与原来的对象是完全隔离的,互不影响, 对一个对象的修改

2021-01-13 20:26:15 123

原创 github

【第一步】建立先仓库第一步的话看一般的提示就知道了,在github新建一个repository(谷歌可以解决),都是可视化的界面操作,所以难度不大。或者看这里:https://help.github.com/articles/create-a-repo 这是官方help,虽然是英文的,但是基本都是图和代码,所以很容易读懂。在github首页的右上角,点击红框中的Create New Repo。进入新建仓库的界面填一下仓库名称,Initialize this repository with a

2021-01-13 18:53:02 93

原创 vuex的辅助函数和五大核心

Vuex的五个核心属性及辅助函数Vuex是什么??VueX 是一个专门为 Vue.js 应用设计的状态管理架构主要包括几个模块state 保存全局状态的getters 允许组件从state中获取数据,相当于计算属性mutation store中唯一改变state中状态的方法,同步函数actions 用于提交mutation 异步操作modules 拆分多个模块的辅助函数mapState引入import { mapState } from 'vuex3种方法1.对象:compu

2021-01-12 19:36:42 121

原创 git

注册好账号后就开始创建一个版本库,用来管理你的代码文件。首先,创建一个空目录,我就直接创建空文件夹为git,然后在git目录输入git init,这样git仓库就算建好了。在文件夹git下会有一个.git的隐藏目录(可用ls -a查看)。Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。工作区(Working Directory)就是你在电脑里能看到的目录,比如我的git文件

2021-01-12 18:56:20 65

原创 冒泡排序、递归

一:冒泡排序1思想:冒泡排序思想:每一次对比相邻两个数据的大小,小的排在前面,如果前面的数据比后面的大就交换这两个数的位置要实现上述规则需要用到两层for循环,外层从第一个数到倒数第二个数,内层从外层的后面一个数到最后一个数2特点:排序算法的基础。简单实用易于理解,缺点是比较次数多,效率较低。3实现:var times=0; var bubbleSort=function(arr){ for(var i=0;i<arr.length-1;i++){ for

2021-01-11 17:03:40 492

原创 sessionStorage,localStorage,cookie 的区别 Cook存储数据

共同点:都是保存在浏览器端、且同源的 区别: 1、cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递,而sessionStorage和localStorage不会自动把数据发送给服务器,仅在本地保存。cookie数据还有路径(path)的概念,可以限制cookie只属于某个路径下 2、存储大小限制也不同,cookie数据不能超过4K,同时因为每次http请求都会携带cookie、所以cookie只适合保存很小的数据,如会

2021-01-05 14:12:32 159

转载 Axios 拦截做过哪些

Axios 拦截做过哪些Axios 拦截分为请求拦截和响应拦截,请求拦截就是在你请求的时候会进行触发!只要是你发送一个 axios 请求就会触发!所以我们主要用它做我们的loading 加载和数据的权限验证,包括我们所有的数据预加载也可以实现,响应拦截主要是我们在 loading 加载,和做所有数据加载需要整体的结束,这个时候的结束就需要在数据马上发给前端的时候进行隐藏和结束,包括我们的请求头的设置,后端数据已经发送过来的时候,我们为了确保请求头的传递就必须在看看header 里面是否有你需要的请求,如果

2021-01-05 14:11:17 139

空空如也

空空如也

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

TA关注的人

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