Avan's Blog

Avan 的博客

在平时需求中,经常会遇到一些秘钥,或者一大串文章需要复制再或者百度网盘链接。此时我们可以提供一个按钮,让用户一键复制

1
2
3
4
5
6
7
const el = document.createElement('input');
el.setAttribute('value', secret);
document.body.appendChild(el);
el.select();
const flag = document.execCommand('copy');
document.body.removeChild(el);
flag && alert('复制成功');

这段代码,在不同框架放到,事件监听内即可。提示方式也可以用相应的组件进行替代。

阅读全文 »

先进后出(后进先出)

  • push 添加一个元素到栈顶
  • pop 弹出栈顶的元素
  • top 返回栈顶的元素
  • isEmpty 判断是否为空
  • size 返回栈里元素的个数
  • clear 清空栈
阅读全文 »

前言

今天使用 cra 创建了个项目。打算研究一下 rc-form 的实现思路。发现项目并未开启装饰器。并提示下面的错误。

Support for the experimental syntax 'decorators-legacy' isn't currently enable

阅读全文 »

前言

这是一道 LeetCode 简单题。下面我们简单的做一下,算法萌新,欢迎大佬提供更好的解决思路。

无脑for循环

阅读全文 »

前言

我们知道当在浏览器输入 9999999999999999999999 + 9999999999999999999999 时,它的结果是一个科学计数法。往往我们不需要也看不懂科学计数法。所以需要实现一个函数来实现大数相加。

分析

阅读全文 »

浅析过程

快速排序的原理是,通过定一种中间基准值。与这个基准值进行比较,即可区分成比该值大的一组,以及比该值小的一组。然后继续对区分好的数组进去取基准,在进行比较。直到该数组无法切分后,再将一层层向上合并,最终返回结果。

时间复杂度为 O(nlogn)

阅读全文 »

浅析过程

计数排序的原理是通过统计给定数组中,每个值出现的次数,最后通过统计后对应值出现的次数,从小到大返回一个新的数组。

代码实现思路

阅读全文 »