![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
望星河
这个作者很懒,什么都没留下…
展开
-
事件订阅派发模式
思路:定义一个state用来存贮订阅事件和事件对应的回调函数。on方法用来订阅事件和添加对应的回调。emit方法则是用来派发事件,并且执行事件对应的回调函数队列。off方法则是用来取消订阅事件的回调函数或整个事件。once方法是只订阅一次事件。原创 2023-10-27 17:50:54 · 82 阅读 · 0 评论 -
instanceof 的原理以及手写实现
众所周知,js数据类型分为基本数据类型与复杂数据类型,而 instanceof 便是用来检测复杂数据类型,返回一个布尔值。其原理便是,检测构造函数的原型是否出现在检测对象的原型链上。原创 2023-10-25 20:46:06 · 123 阅读 · 0 评论 -
js实现复制文本
js实现复制文本。原创 2022-09-01 17:56:17 · 2957 阅读 · 2 评论 -
实现一个点击保存内容到粘贴板上的功能
const copy = () => { const copyValue = document.getElementById('copyValue') // 如果想要选中内容是input标签包裹的则不需要重新生成input const input = document.createElement('input'); input.setAttribute('readonly', 'readonly'); input.setAttribute..原创 2022-02-18 10:48:01 · 256 阅读 · 0 评论 -
react实现设置组合快捷键
分析下设置快捷键:1.首先组合快捷键第一个必须为功能键(shift、ctrl、alt)且最后一个键不能为功能键,2.组合键的键数大于1(shift+V),小于等于4(ctrl+shift+alt+A)3.当出现功能键+普通键+功能键时(如shift+A+alt)时,应替换为功能键+功能键+(shift+alt+),就是功能键必须相连,不相连最后一个功能键把普通键替换掉,4.当出现不符合规则的组合时需要变回未改变时的状态state = { oldKey: 'CTRL+F12', ne原创 2022-01-13 17:44:17 · 1973 阅读 · 1 评论 -
2021-05-25
React引入本地图片的方法类似于引入外部css样式,先用import引进来,起一个变量名。然后src={{变量名}}就可以了原创 2021-05-25 20:16:42 · 77 阅读 · 1 评论 -
关于数组排序方法sort()的理解
我在接触数组排序方法的时候看到这样一组代码:var arr = [10, 4, 50, 32];console.log(arr.sort((a, b) => a - b));然后他就按从小到大的顺序排好了;就很神奇。当时刚学没想那么深入,没弄懂return a-b到底是个什么意思;今天心血来潮,就各种百度,现在总算有个大致的理解了。我的理解是他是个冒泡排序,,内置了一个匿名的比较函数compare(a,b),遍历数组,a,b为连续的两个数、,a-b,如果>0则交换a,b的位置原创 2021-04-19 12:44:08 · 827 阅读 · 0 评论 -
数组随机排序的两种实现方法
1.利用数组中的sort()方法: var arr = [10, 4, 50, 32]; console.log(arr.sort((a, b) => a - b));2.Fisher-Yates Shuffle,复杂度为O(n)。从后向前遍历,不断将当前元素与随机位置的元素(除去已遍历的部分)进行交换function shuffle(arr) { let m = arr.length; while (m > 1){ let index =原创 2021-04-19 11:41:14 · 745 阅读 · 1 评论 -
JS 去除数组重复元素
第一种var arr=[1,6,1,5,5,5,1,1,5,5,5,5,55,];function norepeat(){for(var i=0;i<arr.length;i++){for(var j=arr.length-1;j>=i+1;j–){if(arr[i]==arr[j]){arr.splice(j,1)console.log(j)}}}}norepeat(arr);document.write(arr)第二种var arr=[1,6,1,5,5,5,1原创 2021-03-03 21:31:53 · 448 阅读 · 4 评论