自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Vuex

vuex和普通全局对象区别1、Vuex 的状态存储是响应式的。当 Vue 组件从 store 中读取状态的时候,若 store 中的状态发生变化,那么相应的组件也会相应地得到高效更新。2、你不能直接改变 store 中的状态。改变 store 中的状态的唯一途径就是显式地提交 (commit) mutation。这样使得我们可以方便地跟踪每一个状态的变化,从而让我们能够实现一些工具帮助我们更好...

2019-10-12 11:35:56 165

原创 Vue-Router

路由两种模式hash模式:vue-router 默认 hash 模式 —— 使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载。history模式:如果不想要很丑的 hash,我们可以用路由的 history 模式,这种模式充分利用 history.pushState API 来完成 URL 跳转而无须重新加载页面。//设置mo...

2019-10-11 17:35:37 237

原创 禁止网页在微信内缩放字体

//禁止微信内调整字体大小 if (typeof WeixinJSBridge == "object" && typeof WeixinJSBridge.invoke == "function") { handleFontSize(); } else { if (document.a...

2020-04-22 10:15:06 252

原创 ios适配暗黑模式

ptefers-color-scheme属性媒体查询特性,用于检测系统主题为暗黑或者亮色语法no-preference:未设置或者不支持 light:系统使用浅色主题 dark:系统使用暗色主题样例@media (prefers-color-scheme: dark) { .day.dark-scheme { background: #333; col...

2020-04-22 10:13:35 400

原创 手写代码题

重写数组方法push(从数组后面添加一项或多项)Array.prototype.push = function(){ for(var i=0,l=arguments,length;i<l;i++>){ this[this.length-1] = arguments(i); } return this.length;}pop(删除最...

2020-03-17 12:04:12 249

原创 多元素浮动高度参差不齐问题

亲身测试有两个方法有效:1利用clear属性假如所有元素左浮动,给最左一列元素增加属性clear:left2.利用inline-block 最外层容器font-size设置为0,目的是去除inline-block元素间默认间距; 内层元素设置display:inline-block,同时重置font-size,并且设置vertical-align:top向上对齐;...

2020-03-15 10:52:34 323

原创 CSS3新特性

边框border-radiusbox-shadowborder-image不支持IE背景background-size : width height/百分比/contain/coverbackground-origin: padding-box|border-box|content-box;背景定位区域background-clip: border-box|padding-box|...

2020-03-15 09:57:59 123

原创 HTML5新特性

1.新增语义化标签header、footer、section、nav、article、aside、time、main2.增强表单新增input类型:number、tel、email、time、week、month、url、range新增表单元素:datalist、progress、meter、keygen、output新增表单属性:autofocus、required、placehold...

2020-03-15 09:51:50 143

原创 HTML/CSS面试题

盒模型盒模型就是把一个元素表示成一个矩形盒子,包括content(内容),padding(内边距),border(边框),margin(外边距)两种盒模型:标准盒子模型和IE盒模型的区别标准盒模型的内容大小就是contentIE盒模型的大小是content+padding+border切换盒模型通过设置box-sizing属性。标准盒模设置为content-box(默认)IE盒模型设...

2020-03-14 13:07:07 298

原创 JS面试题

new操作符具体做了什么创建一个空对象绑定原型关系obj.__proto__ = Function.prototypethis指向新对象返回新对象

2020-03-13 16:43:50 140

原创 event loop

JavaScript的事件分两种,宏任务(macro-task)和微任务(micro-task)宏任务:包括整体代码script,setTimeout,setInterval微任务:Promise.then(非new Promise),process.nextTick(node中)事件的执行顺序,是先执行宏任务,然后执行微任务,这个是基础,任务可以有同步任务和异步任务,同步的进入主线程...

2020-03-12 09:16:14 111

原创 ES6新特性

1.class类基本用法class Point { constructor(name) { this.name = name; } showName() { console.log(this.name) }}类的内部所有定义的方法,都是不可枚举的,除了在constructor内部的属性,其他定义的都在原型上...

2020-03-12 09:13:30 225

原创 离线应用

什么是离线应用?离线应用是指通过离线缓存技术,让资源在第一次被加载后缓存在本地,下次访问它时就直接返回本地的文件,就算没有网络连接。离线应用优点?在没有网络的情况下也能打开网页。由于部分被缓存的资源直接从本地加载,对用户来说可以加速网页加载速度,对网站运营者来说可以减少服务器压力以及传输流量费用。离线应用核心是什么?离线应用的核心是离线缓存技术,历史上曾先后出现2种离线离线缓存技术,它...

2020-03-11 08:37:25 766

原创 webpack面试题

CSS单独提出一个文件

2020-03-10 15:21:43 628

原创 Vue.js知识点梳理(三)

如何理解Vue的响应式系统的?响应式系统简述:任何一个 Vue Component 都有一个与之对应的 Watcher 实例。Vue 的 data 上的属性会被添加 getter 和 setter 属性。当 Vue Component render 函数被执行的时候, data 上会被 触碰(touch), 即被读, getter 方法会被调用, 此时 Vue 会去记录此 Vu...

2020-03-10 13:09:25 171

原创 keep-alive遇到的坑

43243

2019-10-29 15:53:14 1758 1

原创 keep-alive组件使用

反对法地方

2019-10-29 11:59:36 219

原创 Vue.js知识点梳理(二)

vue更新数组时触发视图更新的方法变异方法push()pop()shift()unshift()splice()sort()reverse()替换数组例如:filter(), concat()和slice() 。这些不会改变原始数组,但总是返回一个新数组。当使用这些非变异方法时,可以用新数组替换旧数组:example1.items = example1.items.fil...

2019-10-12 16:01:39 137

原创 Vue.js知识点梳理(一)

发到

2019-10-12 14:02:44 234

原创 HTTP协议基础知识

什么是Http协议超文本传输协议,是一个应用层协议,通过浏览器和服务器进行数据交互,进行超文本(文本、图片、视频等)传输的规定。http协议结构组成请求行(包括url,请求方式,状态码,http协议版本)请求头请求体http协议中有哪些请求方式GET:用于请求访问已经被URI(统一资源标识符)识别的资源,可以通过URL传参给服务器POST:用于传输信息给服务器,主要功能与GET方法...

2019-10-11 11:36:56 209

原创 常见前端安全攻击防御

CSRF(Cross Site Request Forgy)跨站请求伪造原理: 在第三方网站向本网站发请求(1)用户在a站前端页面发起登录(身份认证)请求(2)a站后端确认身份,登录成功,cookie中存在用户的身份认证信息(3)b站前端页面向a站后端发起请求,带着a站的cookie信息(身份认证信息),请求成功特点:b站发送的请求带着a站的cookie信息;b站发送请求不经过a站的...

2019-10-11 10:41:42 241

原创 JavaScript继承方式

原型链继承利用prototype将子构造函数的prototype指向Person达到继承的目的;function Person(name){ this.name = name; this.country='china';}Person.prototype.play = function(){ }function Child(age){ this.age...

2019-10-10 18:34:38 113

原创 模块化

首先想区分一下,工程化,组件化,模块化的区别,看着感觉都差不多,傻傻分不清楚工程化与工具化在一段事件内,一直认为工程化==工具化,但是显然,工程化并不仅仅于此,我觉得更好的理解是,工程化是一系列标准并由一套标准的工具链具体实现,这并不是从哪本权威的书上看的,个人理解,如果不对,欢迎指正模块化与组件化这两个概念更容易分不清,因为本来就很模糊,他们的差别体现在颗粒度上,一个but...

2019-10-10 12:01:29 182

原创 覆盖更新与增量更新

1232132132

2019-10-09 18:35:28 2643

原创 http缓存

http缓存相关请求响应头Cache-Control请求/响应头,缓存控制字段,可以说是控制http缓存的最高指令,要不要缓存也是它说了算。它有以下常用值no-store:所有内容都不缓存no-cache:缓存,但是浏览器使用缓存前,都会请求服务器判断缓存资源是否是最新,它是个比较高贵的存在,因为它只用不过期的缓存。max-age=x(单位秒) 请求缓存后的X秒不再发起请求,属于...

2019-10-09 18:08:59 226

原创 跨域解决方案

浏览器端的同源策略如果两个页面的协议,端口和域名中的其中任意一个不相同, 它们就是不同源的, 浏览器会限制他们之间的资源交互;跨域跨域的安全限制只针对浏览器, 服务器是没有跨域的安全限制的;代理跨域原理: 由于服务器没有跨域限制,所以在需要跨域访问时,在中间设置一个中间层举例:192.168.10.1:8080 是调用方192.168.10.2:8080 是被调用方它俩...

2019-10-09 10:58:12 296

原创 对正向代理和反向代理的理解

之前看网上对正向代理和反向代理的解释,一直有点含糊不清,偶然看到一篇文章才感觉清晰了正向代理我要跟马云借500万,但是他肯定是不会借给我的,于是我找到一个牛逼的朋友小明,让他帮我去跟马云借500万,结果马云借给他了,然后小明又把借到的500万给了我,在这个过程中,我的朋友小明就是代理,而马云不知道最终拿钱的是我,这个例子中,我相当于客户端,小明就是代理服务器,马云是客户端真正想访问的服务器...

2019-10-08 16:45:52 145

原创 canvas时钟

<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>canvas 时钟</title> <style> * { margin: 0; padding: 0; } .main { width: 1000px;...

2019-09-20 14:02:41 211

原创 JavaScript学习笔记(canvas绘图)

canvas绘图分为2d绘图和3d绘图(WebGL),本篇主要梳理一下2d绘图相关的知识canvas绘图依赖<canvas>标签作为画布<canvas id="drawing" width=" 200" height="200">您的浏览器不支持canvas绘图功能</canvas> 可以在元素上添加widht,height属性,也可以通过css添加样...

2019-09-20 12:02:18 485

原创 JavaScript学习笔记(事件)

事件

2019-09-18 15:05:59 91

原创 JavaScript学习笔记(BOM)

window对象全局作用域window对象(浏览器)相对于屏幕的位置fireFox: screenX/ screenY其他浏览器:screenLeft/screenTopvar leftPos = (typeof window.screenLeft == "number") ? window.screenLeft : window.screenX; var topPos = (t...

2019-09-16 15:45:11 199

原创 JavaScript学习笔记(数组)

数组是很常用的引用类型,在开发时对数组各种操作应该熟练掌握,梳理一下关于数组的基本知识,有不对的地方欢迎指正数组是数据的有序列表,ECMAScript 数组的每一项可以保存任何类型的数据创建数组方法使用Array构造函数var arr1 = new Array(3);//创建一个3项的数组var arr2 = new Array("3");//创建一个一项为3的数组var arr3...

2019-09-14 16:47:50 172

原创 JavaScript学习笔记(函数)

因为函数可以说是在JS编程中的占据核心地位,所以单独写个文章梳理一下函数知识,有错误或者理解偏差欢迎指正个人理解,函数就是封装一些JS变量,表达式,语句的代码块,能指定输入和输出,在一些时机调用执行代码创建函数的方式函数声明funtion funName(num){ alert(num)}函数表达式var funName = function(num){ alert...

2019-09-13 19:44:09 139

原创 JavaScript学习笔记(对原型的理解)

原型

2019-09-12 16:42:50 165

原创 JavaScript学习笔记(变量,作用域和内存)

执行环境作用域

2019-09-12 16:16:47 170

原创 JavaScript学习笔记(闭包)

看了很多关于闭包的文章,在此总结自己理解范围内的闭包,欢迎补充说明。在JavaScript高级程序设计中,闭包的定义是,有权访问另一个函数作用域中的变量的函数,实现闭包的方式就是在函数中嵌套另一个函数。闭包三大特点:函数嵌套函数归根结底,闭包就是一个函数,可以这么理解,任何函数都是一个闭包,全局函数是全局作用域的内函数,是window的闭包内层函数能够访问外层的变量闭包的作用...

2019-09-12 14:31:27 202

转载 将博客搬至CSDN

搬家

2019-09-12 03:18:20 113

原创 Ajax、fetch和axios的区别

Ajax传统 Ajax 指的是 XMLHttpRequest(XHR), 最早出现的发送后端请求技术,隶属于原始js中,核心使用XMLHttpRequest对象,多个请求之间如果有先后关系的话,就会出现回调地狱。ajax封装://对原生Ajax方法进行封装function ajax2(opt){ opt = opt || {}; opt.method = opt.method.to...

2019-09-11 22:38:43 133

空空如也

空空如也

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

TA关注的人

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