摘要: 冒泡算法 冒泡排序是一种通过交换元素位置实现的稳定排序方式,其特点是每一轮排序后,都会在首端或尾端产生一个已排序元素,就像水泡不断上浮一样,通过多次排序,最终所有元素变得有序。 比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一 阅读全文
posted @ 2021-06-07 17:12 huliang56 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 单一职责原则(SRP) Single Responsibility Principle 单一职责原则的职责被定义为“引起变化的原因”。如果我们有两个动机去改写一个方法,那么这个方法就具有两个职责。每个职责都是变化的一个轴线,如果一个方法承担了过多的职责,那么在需求的变迁过程中,需要改写这个方法的可能 阅读全文
posted @ 2021-01-11 10:59 huliang56 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 设计模式的定义是:在面向对象软件设计过程中针对特定问题的简洁而优雅的解决方案。 创建型(Creational Patterns) 单例模式(Singleton Pattern) 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 // 惰性单例 const getSingle = (fn) => 阅读全文
posted @ 2021-01-11 10:33 huliang56 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 近期需实现一个金额输入框的功能,采用了vue-currency-input组件,测试发现IE11+,Chrome,微信开发者工具都能正常使用,只有手机端的微信浏览器不支持。 查阅源码发现是组件内使用 Intl.NumberFormat 检测金额的格式,而手机端的微信浏览器并没有完整的实现该功能。 I 阅读全文
posted @ 2020-10-19 16:23 huliang56 阅读(918) 评论(0) 推荐(0) 编辑
摘要: stylelint是一个强大的现代 CSS 检测器,可以让开发者在样式表中遵循一致的约定和避免错误。拥有超过170条的规则,包括捕捉错误、最佳实践、控制可以使用的语言特性和强制代码风格规范。它支持最新的CSS语法,并且灵活可配置。 1. 安装 yarn add stylelint stylelint 阅读全文
posted @ 2019-11-26 11:09 huliang56 阅读(4215) 评论(0) 推荐(0) 编辑
摘要: 以下方式基于 @vue/cli 快速搭建的交互式项目脚手架 1. 路由懒加载 当打包构建应用时,JavaScript 包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件,这样就更加高效了。 结合 Vue 的异步组件和 Webpack 阅读全文
posted @ 2019-11-19 15:02 huliang56 阅读(1111) 评论(0) 推荐(0) 编辑
摘要: React 是什么 用脚本进行DOM操作的代价很昂贵。有个贴切的比喻,把DOM和JavaScript各自想象为一个岛屿,它们之间用收费桥梁连接,js每次访问DOM,都要途径这座桥,并交纳“过桥费”,访问DOM的次数越多,费用也就越高。 因此,推荐的做法是尽量减少过桥的次数,努力待在ECMAScrip 阅读全文
posted @ 2019-05-29 18:26 huliang56 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 一、yarn安装缓慢 二、安装调试问题 参考链接: https://electron-react-boilerplate.js.org/docs/installation-debugging-solutions 检查系统是否已经安装好所依赖的环境(Visual C++ 和 Python 2.7) 若 阅读全文
posted @ 2019-05-17 09:48 huliang56 阅读(1280) 评论(0) 推荐(0) 编辑
摘要: ESLint是在ECMAScript/JavaScript代码中识别和报告模式匹配的工具,它的目标是保证代码的一致性和避免错误。在许多方面,它和JSLint、JSHint相似,除了少数的例外: ESLint使用Espree解析; ESLint使用AST去分析代码中的模式; ESLint是完全插件化的 阅读全文
posted @ 2018-01-06 23:53 huliang56 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 1 /** 2 * 频率控制 返回函数连续调用时,fn 执行频率限定为每多少时间执行一次 3 * @param {Function} fn 需要调用的函数 4 * @param {Number} delay 延迟时间,单位毫秒 5 * @param {Boolean} immediate 给immediate参数传递false绑定的... 阅读全文
posted @ 2017-08-01 14:09 huliang56 阅读(1107) 评论(0) 推荐(0) 编辑