前端扫地僧
码龄5年
关注
提问 私信
  • 博客:86,543
    86,543
    总访问量
  • 72
    原创
  • 2,179,139
    排名
  • 18
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
  • 加入CSDN时间: 2019-11-05
博客简介:

qq_45839045的博客

查看详细资料
个人成就
  • 获得32次点赞
  • 内容获得5次评论
  • 获得129次收藏
创作历程
  • 58篇
    2022年
  • 14篇
    2021年
成就勋章
兴趣领域 设置
  • 前端
    html5javascriptcss正则表达式
创作活动更多

超级创作者激励计划

万元现金补贴,高额收益分成,专属VIP内容创作者流量扶持,等你加入!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

图片懒加载的原理

图片懒加载的实现方式
原创
发布博客 2022.06.29 ·
539 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

cookie、session、token的区别

什么是认证(Authentication)由于http是无状态的协议,因此,需要各种通行证来证明身份。我们主要有以下几种方式的证明。什么是 Cookiecookie对于事务处理没有记忆能力,每次客户端和服务端会话完成时,服务端不会保存任何会话信息:每个请求都是完全独立的,服务端无法确认当前访问者的身份信息,无法分辨上一次的请求发送者和这一次的发送者是不是同一个人。所以服务器与浏览器为了进行会话跟踪(知道是谁在访问我),就必须主动的去维护一个状态,这个状态用于告知服务端前后两个请求是否来自同一浏览器
原创
发布博客 2022.05.19 ·
6234 阅读 ·
6 点赞 ·
0 评论 ·
39 收藏

vue2和vue3的区别

vue实例的创建及挂载//Vue2的写法import Vue from 'Vue' //引入Vue构造函数const vm = new Vue({ render:h=> h(App)});// 挂载vm.$mount('#app')console.log(vm)//Vue3的写法import { createApp } from 'vue' //引入一个名为createApp的工厂函数const app = createApp(App);// 挂载app.mount('#
原创
发布博客 2022.05.07 ·
467 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

导航流程:从输⼊URL到页面展示的过程

从输入网址到展示页面的流程如下浏览器进程主要负责用户交互、⼦进程管理和⽂件储存等功能。网络进程是面向渲染进程和浏览器进程等提供⽹络下载功能。 渲染进程的主要职责是把从⽹络下载的HTML、JavaScript、CSS、图⽚等资源解析为可以显⽰和交互的页面。因为渲染进程所有的内容都是通过⽹络获取的,会存在⼀些恶意代码利⽤浏览器漏洞对系统进⾏攻 击,所以运⾏在渲染进程⾥⾯的代码是不被信任的。这也是为什么Chrome会让渲染进程运⾏在安全沙箱里,就是为了保证系统的安全。⾸先,用户从浏览器进程⾥输⼊请求信息 输
原创
发布博客 2022.05.06 ·
401 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

http和ip、tcp协议详解

ip协议IP:把数据包送达⽬的主机 1数据包要在互联⽹上进⾏传输,就要符合⽹际协议 ⽹ (Internet Protocol,简称IPI )标准。互联⽹上不同的在 线设备都有唯⼀的地址,地址只是⼀个数字,这和⼤部分家庭收件地址类似,你只需要知道⼀个家庭的具体 地址,就可以往这个地址发送包裹,这样物流系统就能把物品送到⽬的地。 计算机的地址就称为IP地址,访问任何⽹站实际上只是你的计算机向另外⼀台计算机请求信息。 计如果要想把⼀个数据包从主机A发送给主机B,那么在传输之前,数据包上会被附加上主机B的IP地址
原创
发布博客 2022.04.27 ·
1382 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

scoped的原理及穿透使用

scoped的作用scoped的由来css一直有个令人困扰的作用域问题:即使是模块化编程下,在对应的模块的js中import css进来,这个css仍然是全局的。为了避免css样式之间的污染,vue中引入了scoped这个概念。在vue文件中的style标签上,有一个特殊的属性:scoped。当一个style标签拥有scoped属性时,它的CSS样式就只能作用于当前的组件。通过设置该属性,使得组件之间的样式不互相污染。如果一个项目中的所有style标签全部加上了scoped,相当于实现了样式的模块化。
原创
发布博客 2022.04.25 ·
1899 阅读 ·
2 点赞 ·
0 评论 ·
2 收藏

从结构化上下文解读闭包

关于闭包有两种常见的说法,第一种说法是,闭包是由函数以及声明该函数的词法环境组合而成的。这个说法来源于MDN-闭包。另外一种说法是,闭包是指有权访问另外一个函数作用域中的变量的函数。闭包确实可以访问另一个函数作用域变量的功能,但闭包不是函数。我们先来了解词法环境词法环境我们可以看看ES5规范第十章(可执行代码和执行上下文)中的第二节词法环境是怎么说的。A Lexical Environment is a specification type used to define the associat
原创
发布博客 2022.04.21 ·
182 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

ajax的原理和场景

我们以前介绍过在jQuery中使用ajax,但是那是被封装后,不是直接操作的。我们今天介绍在js原生中的ajax.ajax的原理最核心的依赖是浏览器提供的XMLHttpRequest对象,它扮演的角色相当于秘书,使得浏览器可以发出HTTP请求与接收HTTP响应。浏览器接着做其他事情,等收到XHR返回来的数据再渲染页面。可以局部刷新页面。1.创建Ajax核心对象XMLHttpRequest(记得考虑兼容性)1. var xhr=null; 2. if (window.XMLHttpRequest)
原创
发布博客 2022.04.19 ·
115 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

token的原理及过期处理

Token 是用户登录成功之后服务端返回的一个身份令牌,在项目中的多个业务中需要使用到:访问需要授权的 API 接口校验页面的访问权限…但是我们只有在第一次用户登录成功之后才能拿到 Token。所以为了能在其它模块中获取到 Token 数据,我们需要把它存储到一个公共的位置,方便随时取用。往哪儿存?本地存储获取麻烦数据不是响应式Vuex 容器(推荐)获取方便响应式的登录成功,将 Token 存储到 Vuex 容器中获取方便响应式为了持久化,还需
原创
发布博客 2022.04.18 ·
20800 阅读 ·
8 点赞 ·
1 评论 ·
37 收藏

vuex的安装及简单使用

Vuex 是什么?Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue 的官方调试工具 devtools extension,提供了诸如零配置的 time-travel 调试、状态快照导入导出等高级调试功能。这是官网对 vuex 的一个简单介绍,官网地址Vuex 状态管理核心Vuex主要有5个管理核心:state、getter、mutation、action、module
原创
发布博客 2022.04.16 ·
232 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Vue Router 的路由模式 hash 和 history 的原理及区别

hash模式的实现原理早期前端路由是基于location.hash来实现的,location.hash的值就是URL中#后面的内容,eg:www.word.com#search,它后面的location.hash的值为#search。hash路由模式的实现主要基于下面几个特性:URL中hash值只是客户端的一种状态,当向服务器发送请求时,hash部分不会被发送;hash值发生变化时,会在浏览器访问历史中增加一条记录;可以通过a标签的href属性修改hash,也可通过给location.hash赋值
原创
发布博客 2022.04.15 ·
907 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

vue动态组件及插槽

组件进阶组件进阶 - 动态组件目标: 多个组件使用同一个挂载点,并动态切换,这就是动态组件、组件进阶 - 组件缓存目标: 组件切换会导致组件被频繁销毁和重新创建, 性能不高使用Vue内置的keep-alive组件, 可以让包裹的组件保存在内存中不被销毁演示1: 可以先给UserName.vue和UserInfo.vue 注册created和destroyed生命周期事件, 观察创建和销毁过程演示2: 使用keep-alive内置的vue组件, 让动态组件缓存而不是销毁语法:​ V
原创
发布博客 2022.04.12 ·
1478 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

vue的生命周期

钩子函数目标: Vue 框架内置函数,随着组件的生命周期阶段,自动执行作用: 特定的时间点,执行特定的操作场景: 组件创建完毕后,可以在created 生命周期函数中发起Ajax 请求,从而初始化 data 数据分类: 4大阶段8个方法初始化挂载更新销毁阶段方法名方法名初始化beforeCreatecreated挂载beforeMountmounted更新beforeUpdateupdated销毁beforeDestroyde
原创
发布博客 2022.04.11 ·
102 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

vue组件的使用和通信

vue组件_概念组件是可复用的 Vue 实例, 封装标签, 样式和JS代码组件化 :封装的思想,把页面上 可重用的部分 封装为 组件,从而方便项目的 开发 和 维护一个页面, 可以拆分成一个个组件,一个组件就是一个整体, 每个组件可以有自己独立的 结构 样式 和 行为(html, css和js)vue组件_基础使用目标: 每个组件都是一个独立的个体, 代码里体现为一个独立的.vue文件口诀: 哪部分标签复用, 就把哪部分封装到组件内(重要): 组件内template只能有一个根标签(
原创
发布博客 2022.04.10 ·
797 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

vue中的过滤器和监听器计算属性的使用场景

vue过滤器-定义使用目的: 转换格式, 过滤器就是一个函数, 传入值返回处理后的值过滤器只能用在, 插值表达式和v-bind表达式Vue中的过滤器场景字母转大写, 输入"hello", 输出"HELLO"字符串翻转, “输入hello, world”, 输出"dlrow ,olleh"语法:Vue.filter(“过滤器名”, (值) => {return “返回处理后的值”})filters: {过滤器名字: (值) => {return “返回处理后的值”}例
原创
发布博客 2022.04.06 ·
522 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

vue的基础指令及修饰符

vue基础-插值表达式目的: 在dom标签中, 直接插入内容又叫: 声明式渲染/文本插值语法: {{ 表达式 }}<template> <div> <h1>{{ msg }}</h1> <h2>{{ obj.name }}</h2> <h3>{{ obj.age > 18 ? '成年' : '未成年' }}</h3> </div></templ
原创
发布博客 2022.04.04 ·
889 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

vue脚手架的基本使用

学Vue目标: 更少的时间,干更多的活. 开发网站速度, 快虽然vue写起来很爽, 但是一定不要忘记, vue的底层还是原生js开发更加的效率和简洁, 易于维护, 快!快!快!就是块 (甚至测试, Java, Python工程师都要学点vue, 方便与前端沟通)现在很多项目都是用vue开发的Vue是什么渐进式javacript框架, 一套拥有自己规则的语法官网地址: https://cn.vuejs.org/ (作者: 尤雨溪)渐进式: 逐渐进步, 想用什么就用什么, 不必全都使用什
原创
发布博客 2022.04.03 ·
1127 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

webpack中常见的loader和plugin及运行流程

Loader直译为"加载器"。Webpack将一切文件视为模块,但是webpack原生是只能解析js文件,如果想将其他文件也打包的话,就会用到loader。 所以Loader的作用是让webpack拥有了加载和解析非JavaScript文件的能力。常见的加载器有以下几种1、 file-loader:把文件输出到一个文件夹中,在代码中通过相对 URL 去引用输出的文件2、 url-loader:和 file-loader 类似,但是能在文件很小的情况下以 base64 的方式把文件内容注入到代码中
原创
发布博客 2022.03.29 ·
2183 阅读 ·
3 点赞 ·
0 评论 ·
5 收藏

webpack的安装与基本使用

webpack基本概念目标: webpack本身是, node的一个第三方模块包, 用于打包代码webpack官网现代 javascript 应用程序的 静态模块打包器 (module bundler)为要学的 vue-cli 开发环境做铺垫webpack能做什么把很多文件打包整合到一起, 缩小项目体积, 提高加载速度(演示准备好的例子)webpack基础使用目标: 把src下的2个js文件, 打包到1个js中, 并输出到默认dist目录下默认入口: ./src/index
原创
发布博客 2022.03.28 ·
337 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

common js和es6模块化的区别

模块化早期 JavaScript 开发很容易存在全局污染和依赖管理混乱问题。这些问题在多人开发前端应用的情况下变得更加棘手。即每个引入的js文件会共享变量,且相互之间若存在依赖关系,会导致下层无法调用上层的方法等一系列问题,所以我们需要模块化来解决问题。common jsCommonjs 的提出,弥补 Javascript 对于模块化,没有统一标准的缺陷。nodejs 借鉴了 Commonjs 的 Module ,实现了良好的模块化管理。目前 commonjs 广泛应用于以下几个场景:Node 是
原创
发布博客 2022.03.26 ·
1395 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多