自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (2)
  • 收藏
  • 关注

原创 proxy的应用实例

proxy能够解决哪些问题及proxy的应用实例

2024-04-23 20:12:16 768

原创 DOM4标准的事件监听与滚屏优化

DOM4标准的事件监听与滚屏优化

2024-04-23 17:38:46 993

原创 vue的就地更新与v-for的key属性

vue的就地更新与v-for的key属性

2024-04-16 23:22:01 1090

原创 vue2数据劫持(源码剖析)

vue2中如何实现对data数据的监听,以及数组的添加、删除等方法的监听和更新视图

2024-04-16 19:34:48 958

原创 vue2中数组的变更检测

vue2中如何实现对数组的添加、删除等方法的监听更新视图

2024-04-16 19:33:01 824

原创 data + computed + watch 思想实现

vue中 data+computed+watch 思想实现

2024-04-09 17:47:14 112

原创 computed 思想实现

计算属性:解决模版中复杂的逻辑运算及复用的问题计算属性只在内部依赖发生改变时,才会重新求值计算属性会缓存其依赖的上一次计算出的数据结果多次复用一个相同值的数据,计算属性只调用一次

2024-04-08 11:01:34 128

原创 函数组合(Function Composition)

函数组合(Function Composition)

2024-03-29 15:27:17 364

原创 工具类(util.js)

【代码】工具类(util.js)

2024-03-28 10:32:26 539

原创 ES5和ES6的深拷贝问题

javascript 深拷贝

2024-03-27 18:34:36 622

原创 路由 (hash模式和history模式)

路由模式(hash\history),单页面应用、多页面应用

2024-03-25 19:40:59 1069

原创 1. MVC思想以及实现

MVC模型

2024-03-18 16:23:53 825

原创 数组扩展方法(二)

数组常用方法重写

2024-03-12 14:17:41 595

原创 前端安全专题

早期的网站用户和服务器的通信,是使用cookie进行认证的,而攻击者可以通过完全伪造用户的请求,因为请求中所有的用户验证信息都是存在于cookie中的。SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的sql语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。在这种攻击中,攻击者将一个透明的、恶意的网页覆盖在一个用户期望看到的网页上面。

2024-01-13 12:35:58 1413

原创 奇怪的问题 a==1 && a==2 && a==3

a==1 && a==2 && a == 3;js隐式转换

2023-11-26 13:53:22 152

原创 展开语法、剩余语法

展开语法、剩余语法

2023-11-21 22:54:51 215

原创 数组扩展方法(一)

forEach、filter、map、every、some、reduce、reduceRight

2023-11-21 19:09:34 309

原创 Arguments对象

arguments 、剩余语法

2023-11-19 22:23:02 484

原创 位运算(<< >> & | ^ ~)

进制转换、机器数、原码、反码、补码

2023-11-19 17:40:18 411

原创 Map 、Set 、weakMap 、weakSet

Map、Set、weakMap、weakSet堆内存、栈内存垃圾回收机制、强引用、弱引用原始值、引用值

2023-11-17 11:29:16 252

原创 Set 对象

Set 属性与方法介绍

2023-11-16 22:50:34 59

原创 Map对象

Map属性与方法介绍

2023-11-16 22:48:38 77

原创 循环、迭代、遍历、枚举

数组遍历原理,生成器(Generator)

2023-11-16 00:06:05 976

原创 闭包与回调函数

闭包与回调函数

2023-11-14 22:46:41 623

原创 bind,call.apply 的区别?

bind,call.apply 的区别?一、作用区别==apply==、==bind==、==call==的使用总结一、作用call、apply、bind 作用是改变函数执行时的上下文,简而言之,就是函数运行时的this指向。什么情况下需要改变this指向,举例:var name = "zhangsan";var obj = { name:"lisi", say:function(){ console.log(this.name) }};obj.say(); // lisi th

2021-03-04 17:36:45 237 1

原创 前端开发【vue开发技巧】日常总结

vue开发技巧前端开发优雅更新propsprovide/inject小型状态管理器卸载watch观察自定义指令获取实例优雅注册插件自动化引入模块路由懒加载(动态chunkName)前端开发优雅更新props更新 prop 在业务中是很常见的需求,但在子组件中不允许直接修改prop,因为这种做法不符合单向数据流的原则,在开发模式下还会报出警告。因此大多数人会通过 $emit触发自定义事件,在父组件中接收该事件的传值来更新 prop。child.vueexport defalut { pro

2020-09-11 11:45:52 794

原创 Symbol

SymbolES6引入了一种新的原始类型Symbol,表示独一无二的值。他是JavaScript语言的第七种数据类型,前六种是undefined、null、Boolean、String、Number、Object直接调用Symbol函数即可生成一个Symbol,注意Symbol函数不能使用new命令,否则会报错。Symbol函数可以接受一个字符串作为参数,表示对Symbold的描述,主要是为了在控制台显示,或者转为字符时,比较容易区分。let s1 = Symbol('foo');let s2

2020-06-17 14:46:26 221

原创 前端使用devServer解决跨域问题

在研发阶段很多时候需要使用到跨域,何为跨域开发阶段往往会遇到上面这种情况,也许将来上线后,前端项目会和后端项目部署在同一个服务器下,并不会有跨域的问题,但是由于开发时会用到webpack-dev-server,所以一定会产生跨域的问题目前解决跨域的主要方案有以下几种:jsonp(淘汰)corshttp proxy此处介绍的使用devServer解决跨域,其使用原理就是http proxy将所有ajax请求发送给devServer服务器,在由decServer服务器做一次转发,发送给数据接口

2020-06-01 19:13:27 3332

原创 常见的VS Code插件提高开发效率

Vetur,Vue多功能集成插件,包括:语法高亮,智能提示,emmet,错误提示,格式化,自动补全,debugger。vscode官方钦定Vue插件,Vue开发者必备2.Beautify 格式化代码3 . HTML Snippets,智能提示HTML标签,以及标签含义4. Auto Close Tag自动闭合HTML/XML标签5. Auto Rename Tag 自动完成另一...

2019-12-09 16:15:12 711

原创 跨域

跨域的解决方案如果是跨域,浏览器会报一个固定格式的错误:Access to XMLHttpRequest at ‘ajax请求URL’ from origin ‘null’ has been blocked by CORS policy:No ‘Access-Control-Allow-Origin’ header is present on the requested resource....

2019-12-01 21:27:24 191

转载 nodejs接收post请求参数

nodejs接收post请求参数1.1-浏览器发送post请求参数的方式1.2-服务端接收post请求参数的方式post请求参数不直接在url路径中拼接,而是放在请求体中发送给服务器请求三要素:请求行、请求头、请求体1.1-浏览器发送post请求参数的方式post请求参数不能直接在url路径中拼接,所以一般使用ajax请求来发送post请求参数通常都是提交form表单数据使用p...

2019-11-25 20:59:35 1180

原创 VSCode 自定义用户代码片段

很多时候时候我们在写代码的时候会遇到很多重复的带吗,并且这些代码的格式是固定的,这时候我们就可以把这些固定的代码片段做成快捷键,在需要用到的地方打出关键字就可以引用出模板。以下是自己工作中常用的一些代码片段,以及设置用户代码片段的方式。1.首先我们需要找设置用户代码片段的文件如下图所示我们常用的就是html和js的快捷键设置下面的代码片段是js中常用的一些代码结构,复制粘贴到对应的jav...

2019-11-23 15:22:04 1014

原创 通过formData数据发送ajax请求

formData1.创建一个formData对象var fd = new FormData(‘form表单’);(创建formdtata对象的小括号里面,就是需要一个form表单dom对象)。2.往fd对象中添加对象fd.append(‘sex’,‘男’);3.formData里面就会有form表单中 有name属性的这些标签的取值。//键值对形式console.log(fd.ge...

2019-11-21 14:28:52 2159

原创 当iframe内的数据发生改变的时候,刷新包含他的父元素中的数据

写这篇文章的目的很简单,就是当我们使用iframe的使用,iframe标签通常是写到一个html页面里的,而这个html页面通常又包含着一些其他的信息,当我们在iframe页面修改html页面里的数据的时候,如何才能实时更新。当我们在user.html里面修改用户的信息之后,如何同步到主页面的html,有两种方法:1.可以在user.html里面发送Ajax请求,重新获取主页面的用户信息,然...

2019-11-17 11:51:56 652

原创 递归(二)

上面的一篇文章已经简单说明了递归的一些使用,但是留下了一个问题,利用递归求斐波那契的第n项的时候,求到稍微大一点的数的时候,会出现求不出来的现象。下面对这个现象进行验证var i = 0;//声明一个变量,用来记录调用getN函数的次数 function getN(n){ i++; if( n == 1 || n == 2){ ...

2019-11-17 11:17:56 142

原创 递归

很多初学者都对递归有很大的迷惑,甚有自己身边的同事对递归多多少少也有一些不解,下面的内容仅代表个人对递归做一些说明理解,仅供参考1.递归语法:函数内部自己调用自己函数调用自己要有结束的时候,不然一直调用内存溢出没有意义1.1直接形成递归function test(){ console.log('我是test函数'); test();}1.2间接的形成递归function te...

2019-11-14 13:21:15 299

原创 SourceTree跳过注册安装使用

SourceTree跳过注册安装使用下载链接 https://www.sourcetreeapp.com/这个时候会要求注册账号,这个时候关掉就可以了我们进入%LocalAppData%\Atlassian\SourceTree\目录创建一个accounts.json文件,写入以下内容[ { "$id": "1", "$type": "SourceTree.Api.H...

2019-11-14 09:51:58 144

原创 Git使用教程

Git版本管理编码的时候有些节点非常关键,那我们就可以存个档,以防出现代码丢失等意外.理解游戏存档常见版本管理软件1.svn2.git 安装 选中直接一直下一步右键出现git bash就表示成功git使用步骤1.新建一个文件夹2.进入到文件夹, 右键 点击 Git Bash Here ,他就会出现一个小黑框3.就在小黑框里写: git init (意思是初...

2019-11-13 21:28:20 498

原创 ajax的常用api测试

ajax的常用api测试AjaxApi下面列出的接口基本都是可以直接使用的,如有问题记得告诉我哦支持的请求方法GET(SELECT):从服务器取出资源(一项或多项)。POST(CREATE):在服务器新建一个资源。PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)。PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。DELETE(DELE...

2019-11-09 16:05:34 1677 1

原创 创建随机验证码可直接使用

本篇文章概述随机验证码的创建与使用大家都知道无论是App还是网站在登陆的时候都需要们输入验证码,比较正规的网站都会采用手机验证码或者是邮箱验证,本篇文章介绍的验证码较为简单,采用随机产生的验证码进行验证登陆,废话不多说,我们直接上代码:package com.Servlet;import java.awt.Color;import java.awt.Font;import java...

2018-06-13 13:44:07 220

vue2数据劫持源码剖析

vue2如何实现对数据的响应式代理,又是如何实现数组的添加,删除等方法时视图的更新。

2024-04-16

MVC模型思想及代码实现

MVC英文MVCModel-View-Controller是软件设计中的一种模式,通常用于实现用户界面、数据和控制逻辑。它强调了软件的业务分离逻辑和显示之间的分离。这种“关注点分离”提供了更好的劳动分工和更好的维护。其它一些设计模式是基于MVC的,比如MVVM、MVW等 MVC软件设计模式的三个部分可以描述如下: 1. Model:管理数据和业务逻辑。 2. View:处理布局与视图模板。 3. Controller:处理数据和视图关联挂载和基本的逻辑操作。

2024-03-19

MVVM模型思想及实现

MVVM模型思想及实现

2024-03-19

vue2 使用websocket搭建简易版多人聊天应用,包含服务端和前端

vue2 使用websocket搭建简易版多人聊天应用,包含服务端和前端

2022-08-11

使用websocket搭建乞丐版多人聊天应用

使用websocket搭建乞丐版多人聊天应用 (原生js)

2022-08-08

空空如也

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

TA关注的人

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