自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 hash 和history 的原理和区别

目前单页应用(SPA)越来越成为前端主流,单页应用一大特点就是使用前端路由,由前端来直接控制路由跳转逻辑,而不再由后端人员控制,这给了前端更多的自由。hash模式和history模式,下面分别详细说明。

2023-08-22 17:15:47 200 1

原创 get和post的区别

设想如果我们将“评论成功”的页面缓存在本地,那么当我发送一个请求的时候,直接返回本地的“评论成功”页面,而服务器端则什么也没有做,根本没有进行评论的更新,岂不是难以想象。用来获取资源,它只是获取、查询数据,不会修改服务器的数据,从这点来讲,它是安全的(后面还会从另一方面分析它的不安全性)。由于它是读取的,因此可以对。则是可以向服务器发送修改请求,进行数据的修改的。由于平时大部分见到的都是基于浏览器的请求,下面我们再看几个常见的问题。因此,在用作为接口进行传输时,最大的不同就在于报文格式上的不同了。

2023-08-16 16:32:37 62 1

原创 vue生命周期

每个 Vue 实例在被创建时都要经过一系列的初始化过程,从开始创建、编译模板、挂在DOM、渲染-更新-渲染、毁损等一系列的过程,每个过程都存在着特定的钩子函数,每个钩子函数又有着 特定的功能。我个人的理解:vue生命周期,相当于人从出生到死亡的一个生命发展过程,随着年龄的增长,每个年龄段做着不一样的事情,发挥不一样的作用。

2023-08-15 08:07:36 61 1

原创 什么是虚拟DOM?如何实现一个虚拟DOM?说说你的思路

虚拟 DOM ()这个概念相信大家都不陌生,从React到Vue,虚拟DOM为这两个框架都带来了跨平台的能力(和Weex实际上它只是一层对真实DOM的抽象,以JavaScript对象 (VNode节点) 作为基础的树,用对象的属性来描述节点,最终可以通过一系列操作使这棵树映射到真实环境上在Javascript对象中,虚拟DOM表现为一个Object对象。并且最少包含标签名 (tag)、属性 (attrs) 和子元素对象 (children) 三个属性,不同框架对这三个属性的名命可能会有差别创建虚拟。

2023-08-09 19:07:25 526 1

原创 解决跨域的八种方式

浏览器对于javascript的同源策略的限制,例如下面的js不能调用中的js,对象或数据(因为和是不同域),所以跨域就出现了.简单的解释就是域名相同,端口相同,协议相同。

2023-08-08 08:27:32 69

原创 set和map的区别

map和set都是stl中的关联容器,map以键值对的形式存储,key=value组成pair,是一组映射关系。set只有值,可以认为只有一个数据,并且set中元素不可以重复且自动排序,如果需要重复则使用multiset,要说区别的话,存储的东西不一样,应用场景不一样,支持的操作也不一样,很多不同。Set中的对象不按特定方式排序,并且没有重复对象。map和set一样是关联式容器,它们的底层容器都是红黑树,区别就在于map的值不作为键,键和值是分开的。map的键是不能修改的,但是其键对应的值是可以修改的。

2023-08-07 14:06:27 39 1

原创 This指向(总结)

this总是代表它的直接调用者(js的this是执行上下文), 例如 obj.func ,那么func中的this就是obj在默认情况(非严格模式下,未使用 'use strict'),没找到直接调用者,则this指的是 window (约定俗成)在严格模式下,没有直接调用者的函数中的this是 undefined使用call,apply,bind(ES5新增)绑定的,this指的是 绑定的对象。

2023-08-02 19:33:10 22

原创 Symbol

使用Symbol可以让模块里面的属性和方法变成私有文件 a.js文件b.jsno!no!no!由于Symbol常量被定义在a.js中,外面的模块是访问不了这个Symbol的。因此可以达成一个私有变量。

2023-08-01 14:34:00 47 1

原创 async/await详解

async用于申明一个function是异步的;而await则可以认为是 async await的简写形式,是等待一个异步方法执行完成的。它是消灭异步回调的终极武器;是同步语法,也就是用同步的写法写异步的代码。

2023-07-18 09:04:04 181

原创 移动端(详情)

主要内容什么是移动端、移动端视口、rem em px区别、移动端适配、移动端布局和马蜂窝案例。通过手机预览的网页,就是手机端网页网页分为:pc端网页 移动端网页 小程序ios工程师 安卓工程师1) 屏幕的分辨率/设备像素2) 设备能控制显示的最小单元,可以把物理像素看成是对应的像素点。

2023-07-17 14:43:33 96 1

原创 class类

如果子类没有定义 constructor 方法,这个方法会被默认添加,且子类默认添加的 constructor 方法都会默认执行 super() 方法。constructor 方法是类的默认方法,通过 new 命令生成对象实例时,会自动调用该方法。类相当于实例的原型,所有在类中定义的方法,都会被实例继承。但如果在一个方法前,加上 static 关键字,就表示该方法不会被实例继承,而是直接通过类来调用,这就称为“静态方法”。console.log('实例方法')在⼦类的构造函数,必须先调⽤super( )

2023-07-12 14:28:38 56 1

原创 你对Promise的理解,并用Promise封装一个异步请求的方法

Promise对象代表一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise 是一个对象,从它可以获取异步操作的消息。这与事件(Event)完全不同,事件的特点是,如果你错过了它,再去监听,是得不到结果的。有了Promise对象,就可以将异步操作以同步操作的流程表达出来,避免了层层嵌套的回调函数。当异步操作完成时,可以通过。

2023-07-11 14:48:07 190 4

空空如也

空空如也

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

TA关注的人

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