portrait

bill-lai

专注 WEB 端开发

前后端常见网络安全问题及防范措施2022-04-06 11:51

网络安全是用于保护关键系统和敏感信息免遭数字攻击的实践。本文例举了常见的网络安全问题及在前后端防范的方法。 XSS(跨站脚本攻击) Cross-Site Scripting(跨站脚本攻击)简称XSS,是一种代码注入攻击。攻击者通过在目标网站上注入脚本,让它运行在用户浏览器上,利用这些脚本可以获取用户

继续阅读 »

iframe,ajax,canvas跨域处理2022-04-01 15:48

因为浏览器的同源策略而产生跨域问题,跨域主要是为了用户的上网安全。下面例举了前端最常见的三个跨域,以及处理方式 iframe 跨域 iframe跨域主要是为了防止恶意网站获取其他网站的dom,拿去私密信息,如果没有跨域恶意网站可以嵌套其他网站,比如https://mail.qq.com/,当用户输入

继续阅读 »

跨站请求如何携带凭证2022-04-01 11:35

站请求怎么成功 跨站请求需要服务端同意,在指定请求响应头中设置Access-Control-Allow-Origin指定该响应允许被哪些域共享。 Access-Control-Allow-Origin: * Access-Control-Allow-Origin: <origin> 将Access

继续阅读 »

webpack5基础知识2022-03-28 22:03

注意,本文使用 webpack5.68.0,不同版本可能会有细微区别。 webpack是一个模块化打包 JavaScript 的工具,在 Wepack 里一切文件皆模块,通过Loader翻译转化文件,通过Plugin注入钩子,最后输出多个模块组合的文件,而Webpack专注于构建模块化项目。官网

继续阅读 »

ES知识点记录2022-03-22 15:17

ES6 Intl 对象是 ECMAScript 国际化 API 的一个命名空间,它提供了精确的字符串对比、数字格式化,和日期时间格式化。 日期格式化 // 例如我们希望出现的日期信息格式是:“xxxx年xx月xx日 xx:xx:xx”。 const res = new Intl.DateTimeFo

继续阅读 »

vue3-effectScope源码解析2022-03-03 16:12

阅读准备 本文使用的vue版本为3.2.26。在阅读 effectScope 源码之前,我们需要知道它的特性,可以通过阅读单例测试源码或者是阅读官网的 API了解特性,推荐阅读单例,了解特性在后面阅读时才能更好理解。   在vue3中可以使用effectScope函数创建一个统一管理effect

继续阅读 »

vue3-computed源码解析2022-03-03 10:50

阅读准备 本文使用的vue版本为3.2.26。在阅读 computed 源码之前,我们需要知道它的特性,可以通过阅读单例测试源码或者是阅读官网的 API了解特性,推荐阅读单例,了解特性在后面阅读时才能更好理解。   在vue3中可以使用用户自定义的getter方法创建一个计算对象,计算对象通过.

继续阅读 »

vue3-ref源码解析2022-02-18 17:31

阅读准备 本文使用的vue版本为3.2.26。在阅读 ref 源码之前,我们需要知道它的特性,可以通过阅读单例测试源码或者是阅读官网的 API了解特性,推荐阅读单例,了解特性在后面阅读时才能更好理解。   我们前两章讲讲解了reactive 源码解析和effect 源码解析,并且知道了它们是如何

继续阅读 »

vue3-effect源码解析2022-02-15 12:30

阅读准备 本文使用的vue版本为3.2.26。在阅读 effect 源码之前,我们需要知道它的特性,可以通过阅读单例测试源码或者是阅读官网的 API了解特性,推荐阅读单例,了解特性在后面阅读时才能更好理解。   通过上一章vue3-reactive源码解析,可以猜想到,effect主要职责是存储

继续阅读 »

nodejs模块(CommonJS)与es6模块的区别2022-02-15 10:22

CommonJS   CommonJS是由JavaScript社区在2009提出的包含模块、文件、IO、控制台在内的一系列标准。在Node.js的实现中采用CommonJS标准的一部分,并在它的基础上进行了一些调整。我们听说的CommonJS模块和Node.js中的实现并不完全一样,现在一般谈到Co

继续阅读 »

vue3-reactive源码解析2022-02-09 22:27

阅读准备 本文使用的vue版本为3.2.26。在阅读 reactive 源码之前,我们需要知道它的特性,了解特性推荐阅读单例测试源码或者是阅读官网的 API,推荐阅读单例,在后面阅读时才能更好理解。vue中响应式数据是通过Proxy来实现的,可以通过我之前写的Proxy 和 Reflect来了解它

继续阅读 »

canvas与屏幕坐标的互相转换2022-02-08 11:20

最近在制作公司的一个项目时有运用到canvas与屏幕坐标互相转换的一个知识点,如果没有进行canvas缩放、旋转、平移一系列操作时,这个需求还是比较简单的,但是如果操作复杂起来后,要再进行转换,在不知道一些特定api就显得比较困难了,在查阅了了一些资料后解决了这个需求这里分享给大家。 解决思路 解决

继续阅读 »

使用操作符做标志管理2022-03-28 22:16

什么是标志?标志就是显示事物特征,便于识别的记号。在程序中我们通常使用枚举来表示标志,比如权限标志: // authorityFlag.js // 是否有查询权限 const QUERY = 1 // 是否有更新权限 const UPDATE = 2 // 是否有删除权限 const DELETE

继续阅读 »

Proxy和Reflect2022-02-08 11:20

Proxy对象用于创建一个对象的代理,从而实现基本操作的拦截和自定义(如属性查找、赋值、枚举、函数调用等)。Proxy被用于许多库和浏览器框架上,例如vue3就是使用Proxy来实现数据响应式的。本文带你了解Proxy的用法与局限性。 Proxy参数与说明 const target = {} con

继续阅读 »

JavaScript的宏任务与微任务2022-02-08 11:20

事件队列与事件循环   我们都知道JavaScript是一门单线程非阻塞的脚本语言,这意味着JavaScript在执行期间都是只有一个主线程来处理所有任务的。而非阻塞是指当代码有异步任务是,主线程会挂起这个异步任务,当这个异步任务执行完毕后,主线程才会在适当时期去执行这个任务的回调。  当异步任务处

继续阅读 »

©2021 - bill-lai 的小站 -站点源码

本站使用ReactHookTypeScriptgithubAPISimpleMDE制作