- 博客(23)
- 收藏
- 关注
原创 JavaScript 设计模式 —— 代理模式
代理模式给某一个对象提供一个代理对象或者占位符,并由代理对象控制原对象的引用,也可以理解为对外暴露的接口并不是原对象。通俗地讲,生活中也有比较常见的代理模式:中介、寄卖、经纪人等等
2022-09-20 14:51:55 1047
原创 JavaScript 设计模式 —— 单例模式
在面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案 —— 设计模式设计模式原则:“找出程序中变化的地方,并将变化封装起来”
2022-08-03 09:33:25 1019 1
原创 NodeJS加解密之Crypto
如果觉得文章不错,欢迎关注、点赞和分享!持续分享技术博文,关注微信公众号 ???????? 前端LeBron互联网时代,网络上的数据量每天都在以惊人的速度增长。同时,各类网络安全问题层出不穷。在信息安全重要性日益凸显的今天,作为一名开发者,需要加强对安全的认识,并通过技术手段增强服务的安全性。crypto模块的目的是为了提供通用的加密和哈希算法。用纯JavaScript代码实现这些功能不是不可能,但速度会非常慢。Nodejs用C/C++实现这些算法后,通过cypto这个模块暴露为JavaScript接
2021-12-22 10:19:52 4640
原创 带你重新认识Node
Node使JavaScript可以运行在不同的地方,不再限制在浏览器中、DOM树打交道。如果HTTP协议是水平面,Node就是浏览器在协议栈另一边的倒影
2021-12-07 10:40:59 701
原创 [面经分享] 收获多家大厂offer | 分享我的2022秋招经历
前言好久不见,我是LeBron,有段时间没写博客了。最近几个月的大部分精力都放在秋招上了,边实习边秋招还是挺吃力的,总算结果还是不错。先介绍一下个人情况:2022届双非本科应届生,项目经验和经历还算丰富,在字节实习至今也快8个月了,详细情况可以来我的博客看看哈 : LeBronChao’s Blog秋招从7.19 ~ 10.24历时三个多月,腾讯、阿里、字节、百度、大疆、华为、Shopee、滴滴、美团、拼多多10家公司,将近40场笔试 / 面试(自我介绍都快念麻了),基本全部通过收到offer,借此机
2021-11-02 12:52:15 844
原创 [源码解读]一文读懂Vuex4源码
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!持续分享技术博文,关注微信公众号 ???????? 前端LeBronVuex4Vuex是在Vue中常用的状态管理库,在Vue3发布后,这个状态管理库也随之发出了适配Vue3的Vuex4快速过Vuex3.x原理为什么每个组件都可以通过this.$store访问到store数据?在beforeCreate时,通过mixin的方式注入了store为什么Vuex中的数据都是响应式的创建store的时候
2021-09-06 10:09:15 184
原创 如何优雅地操作数据库?ORM了解一下
什么是ORM对象关系映射(Object Relational Mapping,简称ORM),是一种程序技术,实现面向对象编程语言中的内存对象与关系型数据库中的业务实体之间的关系映射。这样在我们操作数据库的时候,不再需要和复杂的SQL语句打交道,只需要简单地操作对象的属性和方法就可以直接实现对数据库中对应实体表的CRUD(增删改查)的操作。常见的ORM框架有Node.js 的TypeOrm、Sequlize,Java的Hibernate、Mybatis和Go的Gorm、GoRose等。ORM的方法论
2021-08-11 10:24:36 253
原创 [深入浅出LB]手把手带你实现一个负载均衡器
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!持续分享技术博文,关注微信公众号 ???????? 前端LeBron字节跳动校招进行中,校招内推码: 4FCV6BV 游戏部门前端团队可私聊直推简介负载均衡,含义就是根据一定算法将负载(工作任务)进行平衡,分摊到多个操作单元上运行、执行,常见的为Web服务器、企业核心应用服务器和其他主要任务服务器等,从而协同完成工作任务。负载均衡在原有的网络结构上提供了一种透明且有效的的方法扩展服务器和网络设备的带宽、加强
2021-07-21 10:24:51 729 1
原创 [建议收藏] 你想知道的Vue3核心源码这里都有
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!持续分享技术博文,关注微信公众号 ???????? 前端LeBronEffect和Reactiveeffect作为Vue响应式原理中的核心,在Computed、Watch、Reactive中都有出现主要和Reactive(Proxy)、track、trigger等函数配合实现收集依赖,触发依赖更新Effect副作用依赖函数Track依赖收集Trigger依赖触发Effect
2021-07-07 10:42:36 187
原创 [科普]ES6一些不常见的小知识
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!持续分享技术博文,关注微信公众号 ???????? 前端LeBron掘金原文WeakMap前置知识[深入浅出]JavaScript GC 垃圾回收机制 什么是WeakMap?WeakMap是key / value的组合,key只接受对象,不接受基本类型,value可以为任意类型。方法set(key, value)在WeakMap中设置一组关联对象,返回WeakMap对象get
2021-06-25 10:10:05 286
原创 [深入浅出]JavaScript GC 垃圾回收机制
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享! 持续分享技术博文,关注微信公众号 ???????? 前端LeBron掘金原文为什么需要垃圾回收在C / C++中,跟踪内存的使用和管理内存对开发者来说是很大的负担JavaScript是使用垃圾回收机制的语言,也就是说执行环境负责在代码执行时管理内存,帮开发者卸下了这个负担通过自动内存管理实现内存的分配和资源的回收基本思路很简单,确定哪个变量不会再被使用了,把它的内存空间释放这个过程是周期性的,意思是这个垃
2021-06-08 10:40:26 230
原创 [打包优化]Webpack体积压缩
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!掘金原文链接HTTP压缩HTTP压缩是一种内置在 服务器 和 客户端 之间的,以改进传输速度和带宽利用率的方式;HTTP压缩的流程什么呢?第一步:HTTP数据在服务器发送前就已经被压缩了;(可以在webpack中完成)第二步:兼容的浏览器在向服务器发送请求时,会告知服务器自己支持哪些压缩格式;第三步:服务器在浏览器支持的压缩格式下,直接返回对应的压缩后的文件,并且在响应头中告知浏览器;压缩格.
2021-06-02 10:33:57 453
原创 [分享]Webpack打包分析工具
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!掘金原文链接:[分析]Webpack打包分析Webpack打包分析分享时间和文件的分析工具,便于优化打包产物。打包的时间分析如果希望看到每一个Loader、每一个Plugin消耗的打包时间,可以借助于一个插件:speed-measure-webpack-plugin注意:该插件在最新的webpack版本中存在一些兼容性的问题(和部分Plugin不兼容)截止2021-3-10日,但是目前该插件还在维护.
2021-05-31 10:34:20 496
原创 [打包优化]Webpack DLL
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!掘金原文链接认识DLL库什么是DLLDLL全称是动态链接库(Dynamic Link Library),是为软件在Windows中实现共享函数库的一种实现方式;那么webpack中也有内置DLL的功能,它指的是可以将可以共享,并且不经常改变的代码,抽取成一个共享的库;这个库在之后编译的过程中,会被引入到其他项目的代码中,减少的打包的时间;DDL库的使用分为两步:第一步:打包一个DLL库;第二.
2021-05-28 10:44:04 1761
原创 Webpack DevServer和HMR
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!Webpack-Dev-Server为什么要搭建本地服务器目前开发的代码,为了运行需要有两个操作npm run build编译通过live-server或者直接通过浏览器打开html文件,查看效果为了完成自动编译,webpack提供了几种可选的方式Webpack watch modeWebpack-dev-serverWebpack-dev-middlewareWebpack W.
2021-05-26 10:41:43 195
原创 Webpack 模块化原理和SourceMap
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!Webpack模块化Webpack打包的代码,允许我们使用各种各样的模块化,但是最常用的是CommonJS、ES Module。包括如下原理:CommonJS模块化实现原理;ES Module实现原理;CommonJS加载ES Module的原理;ES Module加载CommonJS的原理;CommonJS原理:打包前const { dateFormat, priceFormat } .
2021-05-24 10:32:11 201
原创 Webpack Plugin知识分享
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!认识PluginLoader是用于特定的模块类型进行转换;Plugin可以用于执行更加广泛的任务,比如打包优化、资源管理、环境变量注入等;常用PluginCleanWebpackPlugin每次修改了一些配置,重新打包时,都需要手动删除dist文件夹:我们可以借助于一个插件来帮助我们完成,这个插件就是CleanWebpackPlugin;安装:npm install clean-.
2021-05-21 10:18:52 94
原创 Webpack Loader知识分享
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!原文链接:Webpack Loader知识分享认识LoaderLoader可以用于对模块的源代码进行转换;在加载这个模块时,webpack其实并不知道如何对其进行加载,我们必须定制对应的loader来完成这个功能。loader配置方式内联方式:import "css-loader!../css/index.css"; loader和文件路径用!分隔配置方式:webpack.config.js.
2021-05-19 10:32:47 169
原创 初识Webpack
写作不易,未经作者允许禁止以任何形式转载!如果觉得文章不错,欢迎关注、点赞和分享!原文链接:初识WebpackWebpack初体验用Webpack解决什么问题模块化高级特性、开发效率、安全性ES6+、Typescript、sass、less监听文件变化并反映到浏览器上,提高开发效率开发完成后的打包,压缩、合并、tree-shaking等以及其他相关的优化Webpack是什么Webpck是一个静态的模块化打包工具,为现代的JS应用程序我们来对上面的解释进行拆解:.
2021-05-18 10:17:59 350 4
原创 浅析HTTP缓存
原文链接:浅析HTTP缓存为什么需要缓存通过缓存机制,可以在相应场景下复用以前获取的资源。显著提高网站的性能和响应速度减少网络流量和等待渲染时间降低服务器压力HTTP缓存类型强缓存协商缓存强缓存对于强缓存,服务器返回的静态资源响应头会设置一个强制缓存的时间,在缓存时间内,如刷新浏览器请求相同资源,在缓存时间未过期的情况下,则直接使用已缓存资源。如缓存资源已过期,执行协商缓存策略。以下为与强缓存相关的HTTP头部字段字段用途实例优先级HTTP版本E
2021-04-07 10:10:57 174
原创 Vue的前世今生
原文链接:Vue的前世今生Vue的前世今生2013 尤雨溪个人项目2014.2 0.1版本发布2015.10 1.0版本发布模板语法改进2016.9 2.0版本发布跨端新的渲染机制2019.10 3.0 alpha发布性能架构按需引入Composition APIProxy observerAOT优化Vue 1 响应式原理构建响应式对象流程walk函数遍历data对象中的属性,调用defineReactive将其变成响应式对象对于对象属性进
2021-04-01 10:08:47 425
原创 Vue进阶 Diff算法详解
原文链接:Vue进阶 Diff算法详解一、虚拟DOM什么是虚拟DOM?虚拟DOM就是把真实DOM树的结构和信息抽象出来,以对象的形式模拟树形结构,如下:真实DOM:<div> <p>Hello World</p></div>对应的虚拟DOM就是:let vnode = { tag: 'div', children:[ {tag:'p', text:'Hello World'}]}为什么需要虚拟DOM?渲
2021-03-31 10:08:04 312
原创 浅析前端路由Router
原文链接:浅析前端路由Router前端路由介绍什么前端路由路由这个概念最早出现在后端,通过⽤户请求的url导航到具体的html⻚⾯。现在的前端路由不同于传统路由,它不需要服务器解析,⽽是可以通过hash函数或者history API来实现。在前端开发中,我们可以使⽤路由设置访问路径,并根据路径与组件的映射关系切换组件的显示,⽽这整个过程都是在同⼀个⻚⾯中实现的,不涉及⻚⾯间的跳转,这也就是我们常说的单⻚应⽤(spa)。前端路由带来了什么相⽐多⻚应⽤(mpa)来说,spa有以下优点:不涉及
2021-03-30 09:26:59 516
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人