工具的使用
文章平均质量分 87
工具的使用
油墨香^_^
想要敲出漂亮的代码, 就要暴露在全世界的眼睛下!
展开
-
每个前端都要学的【前端自动化部署】,Devops,CI/CD
ding1.jpg3,定义机器人名字和关键字,创建完成后先将。转载 2024-07-18 09:11:34 · 52 阅读 · 0 评论 -
Vue3借助print.js实现网页的局部打印
css,style, scanStyles, targetStyle, targetStyles, ignoreElements, properties, repeatTableHeader, showModal...等等。写好之后, 我们可以给想要打印的元素绑定一个id, 表示需要打印该元素以内的所有元素。随后, 需要给按钮绑定一个事件, 用于点击后调用print.js, 将配置项传递进去。引入完成之后, 我们可以写一些HTML元素。现在, 点击按钮, 看看打印效果。转载 2024-05-22 09:27:48 · 252 阅读 · 0 评论 -
你确定多窗口之间sessionStorage不能共享状态吗?
一、背景面试官:说一说和区别呗?😊我:巴拉巴拉。。。(这不是小case嘛,面经都背烂了)面试官:那同域下多窗口间能共享吗?😯我:可以呀,如果页面中出现了串数据的话,很大概率就是localStorage共享导致的呢。既然可以,那在多窗口之间能共享状态吗?😎我:当然不行,每一个窗口之间sessionStorage都是独立的,相互不影响,窗口关闭浏览器就自动销毁了!(斩钉截铁,认真脸)面试官:你确定多窗口之间不能共享状态吗???🤔。转载 2023-02-13 09:48:01 · 1144 阅读 · 1 评论 -
从浏览器多进程到JS单线程,JS运行机制最全面的一次梳理
具体的原理时这样的:webkit CSS3中,如果这个元素添加了硬件加速,并且index层级比较低, 那么在这个元素的后面其它元素(层级比这个元素高的,或者相同的,并且releative或absolute属性相同的), 会默认变为复合层渲染,如果处理不当会极大的影响性能。看到这里,首先,应该对浏览器内的进程和线程都有一定理解了,那么接下来,再谈谈浏览器的Browser进程(控制进程)是如何和内核通信的, 这点也理解后,就可以将这部分的知识串联起来,从头到尾有一个完整的概念。而且多进程还有其它的诸多优势。转载 2023-02-08 13:44:28 · 202 阅读 · 0 评论 -
小程序开发入门及多端开发浅析
距离真正的生产环境还有很长的路要走我们着手使用云开发开发了一个 Todo app 微信小程序,但这仅仅是一个 hello world,小程序还有支付、关联公账号等功能,只有开发了这些功能,才能体现小程序的优势。跨端开发并不难我们了解了跨端开发框架,并熟悉其实现原理,从开发者的角度看,我们需要开发微信支付宝等多个小程序;然而站在浏览器的角度看,它们的差别其实没那么大,都是调用了 BOM/DOM 那几个常用的 API。转载 2023-02-08 13:43:03 · 878 阅读 · 0 评论 -
如何设计一个本地缓存
当然除了使用Map来存储,可能还使用其他数据结构来存储,比如redis使用了双端链表,压缩列表,整数集合,跳跃表和字典;本文大致介绍了要设计一个本地缓存都需要考虑哪些点:数据结构,对象上限,清除策略,过期时间,线程安全,阻塞机制,实用的接口,是否持久化;考虑点主要在数据用何种方式存储,能存储多少数据,多余的数据如何处理等几个点,下面我们来详细的介绍每个考虑点,以及该如何去实现;因为是本地缓存,内存有上限,所以一般都会指定缓存对象的数量比如1024,当达到某个上限后需要有某种策略去删除多余的数据;转载 2022-08-23 09:45:21 · 465 阅读 · 0 评论 -
Redis+Guava,性能炸裂!这组合真的太顶了....
但是高频数据流处理系统中,Redis 的压力也会很大,同时 I/O 开销才是耗时的主要原因,这时候为了降低 Redis 读写压力我们可以用到本地缓存,Guava 为我们提供了优秀的本地缓存 API,包含了过期策略等等,编码难度低,个人非常推荐。微服务场景下,多个微服务使用一个大缓存,流数据业务下,高频读取缓存对 Redis 压力很大,我们使用本地缓存结合 Redis 缓存使用,降低 Redis 压力,同时本地缓存没有连接开销,性能更优。保证最小的缓存量满足精确查询业务,避免冷数据占用宝贵的内存空间。...转载 2022-08-19 09:50:16 · 303 阅读 · 0 评论 -
WebSocket 原理浅析与实现简单聊天
通过上面的介绍,大家应该对 WebSocket 有了一定认识,其实并不神秘,这里对文章内容简单总结一下。当创建 WebSocket 实例的时候,会发一个 HTTP 请求,请求报文中有个特殊的字段 Upgrade,然后这个连接会由 HTTP 协议转换为 WebSocket 协议,这样客户端和服务端建立了全双工通信,通过 WebSocket 的 send 方法和 onmessage 事件就可以通过这条通信连接交换信息。...原创 2022-08-22 09:53:49 · 860 阅读 · 0 评论 -
前端工程师都应该掌握的抓包神器工具
Charles是在PC端常用的网络请求截取工具,无论前端还是后端开发者,都是应该必备的工作提效利器!16.png。原创 2022-08-17 15:58:12 · 839 阅读 · 0 评论 -
无需注解快速生成API文档,跟SpringBoot绝配
做技术管理的童鞋,往往会陷入这样一种困境:疲于奔命,到处救火填坑,沟通推进,却挤不出时间思考对团队和项目来说真正重要的事情。你有没有经历过这样的场景:1.下属老是改了接口但不维护文档,屡说不改2.后端改了接口没有及时通知前端和测试,导致下游环节的同事来投诉3. 由于团队每个角色使用的工具不同,工具之间的数据又无法兼容互通,导致一些共用的数据,每个人却要自己重复去创建、复制一遍;而一旦出现修改,每个人又要到不同软件再改一遍4.新同事入职,工具入门门槛高,导致上手困难且缓慢。...原创 2022-08-17 15:53:00 · 142 阅读 · 0 评论 -
使用 Docker 高效搭建本地开发环境
DockerDocker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。对我们而言,我觉得只需要把他理解成一个便携的应用容器即可Docker。...转载 2022-08-17 15:46:18 · 211 阅读 · 0 评论 -
Bun 是否能挑战 Webpack、Vite 的霸主地位
SWC 是最早摆脱 JavaScript 的工具项目之一,不久之后,Esbuild 发布了,很多人为之兴奋不已,因为在性能方面表现出色,它们成了真正的游戏规则改变者。这里需要注意的是,它生成的是二进制文件,而不是纯文本文件。它的目标是让整个 JavaScript 开发过程更加快速,这是一个全能的工具,它不仅加快了编译和解析的速度,还提供了自己的依赖项管理器工具和捆绑。需要注意的是,我们不建议在生产环境中使用 Bun,因为它缺少了相当多的特性。Bun 并不是万能的工具,它擅长的是构建网站和 Web 应用。..转载 2022-08-09 09:52:08 · 1231 阅读 · 1 评论 -
通向前端架子工的开发利器推荐
01thunderclientVSCode中的postmanhttps//marketplace.visualstudio.com/items?03analyze-css分析某个网站的CSS资源情况https//www.projectwallace.com/analyze-css。04BundleScanner,找出一个网站上所使用的的npm库与对应的版本号https//bundlescanner.com/如此,岂不是大厂某个项目的技术栈和技术选型便一目了然?......原创 2022-07-19 10:38:08 · 648 阅读 · 0 评论 -
京东一面:Redis 如何实现库存扣减操作?如何防止商品被超卖?
在日常开发中有很多地方都有类似扣减库存的操作,比如电商系统中的商品库存,抽奖系统中的奖品库存等。使用mysql数据库,使用一个字段来存储库存,每次扣减库存去更新这个字段。还是使用数据库,但是将库存分层多份存到多条记录里面,扣减库存的时候路由一下,这样子增大了并发量,但是还是避免不了大量的去访问数据库来更新库存。将库存放到redis使用redis的incrby特性来扣减库存。在上面的第一种和第二种方式都是基于数据来扣减库存。...转载 2022-07-15 15:54:17 · 151 阅读 · 0 评论 -
详解 Vite 依赖预构建流程
我们知道,首次执行 时,服务启动后会对 node_modules 模块和配置 optimizeDeps 的目标进行预构建。本节我们就去探索预构建的流程。按照惯例,先准备好一个例子。本文我们用 vue 的模板去初始化 DEMO:项目创建好之后,我们再安装 lodash-es 这个包,去研究 vite 是如何将几百个文件打包成一个文件的:DEMO 代码量比较多,这里就不贴代码了,嫌麻烦的童鞋可以 fork Github repository[1] 。当我们服务启动之后,除了会调用插件容器的 bui原创 2022-07-13 09:24:42 · 7048 阅读 · 0 评论 -
Yarn和npm
Yarn 是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。就像我们可以从官方文档了解那样,它的目的是解决这些团队使用 npm 面临的少数问题,即: 安装的时候无法保证速度/一致性 安全问题,因为 npm 安装时允许运行代码 但请不要惊慌!它并没有试图完全取代 npm。Yarn 同样是一个从 npm 注册源获取模块的新的 CLI 客户端。注册的方式不会有任何变化 —— 你同样可以正常获取与发布包。是否每个人现在转载 2022-06-29 10:17:11 · 306 阅读 · 0 评论 -
非常详细的Taro入门教程
简介Taro 是一个遵循 React 语法规范的开放式跨端跨框架解决方案,支持使用 React/Vue/Nerv 等框架来开发微信/京东/百度/支付宝/字节跳动/ QQ 小程序/H5 等应用,内置了UI组件,还有物料市场,只编写一套代码就能够适配到多端。Tara 遵循 React 语法,集成的是Nerv框架。Nerv是一款基于virtual dom技术的类React UI框架,它基于React标准,拥有和React一致的API与生命周期。得益于与React保持一致API的特性,Nerv可以无..转载 2022-06-22 14:19:55 · 4580 阅读 · 1 评论 -
Fiddler使用教程
1Fiddle简介 Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展。 你对HTTP协议越了解,你就能越掌握Fiddler的使用方法.你越使用Fiddler,就越能帮助你了解HTTP协议。 Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具。 ......转载 2022-06-18 13:55:59 · 419 阅读 · 0 评论 -
MySQL索引的理解
MySQL索引?这玩意儿还能简单聊?明显是在挖坑,幸好老夫早有准备,切听我一一道来。一、索引是什么?索引是帮助MySQL高效获取数据的数据结构。二、索引能干什么?索引非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要。索引能够轻易将查询性能提高好几个数量级,总的来说就是可以明显的提高查询效率。三、索引的分类?1、从存储结构上来划分:BTree索引(B-Tree或B+Tree索引),Hash索引,full-index全文索引,R-Tree索引。这里所描述的是.转载 2022-06-15 09:38:13 · 99 阅读 · 0 评论 -
45个Dreamweaver常见问题整理
Dreamweaver原创 2022-06-15 09:36:07 · 1925 阅读 · 0 评论 -
JavaScript 代码压缩工具
1. JavaScript MinifierIt is a nice looking tool with an API to minify your js code.2. JSMIniIf you want to minify your JavaScript or jQuery files quickly and easily, turn to jsMini. Just copy and paste your source code, select whether you want转载 2022-06-15 09:31:04 · 1451 阅读 · 0 评论 -
Docker实例,Nginx,Mysql,Tomcat,Redis的安装。
Docker实例,Nginx,Mysql,Tomcat,Redis的安装。转载 2022-06-15 09:28:13 · 133 阅读 · 0 评论 -
面试官:要不简单聊一下你对MySQL索引的理解?
MySQL索引?这玩意儿还能简单聊?明显是在挖坑,幸好老夫早有准备,切听我一一道来。一、索引是什么?索引是帮助MySQL高效获取数据的数据结构。二、索引能干什么?索引非常关键,尤其是当表中的数据量越来越大时,索引对于性能的影响愈发重要。索引能够轻易将查询性能提高好几个数量级,总的来说就是可以明显的提高查询效率。三、索引的分类?1、从存储结构上来划分:BTree索引(B-Tree或B+Tree索引),Hash索引,full-index全文索引,R-Tree索引。这里所描述的是.转载 2022-06-14 09:36:37 · 54 阅读 · 0 评论