JavaScript
一只小菜鳥
这个作者很懒,什么都没留下…
展开
-
js使用递归扁平化树状结构数据
递归、扁平化数组原创 2022-07-01 16:45:10 · 1030 阅读 · 0 评论 -
js判断对象是否有某个属性
js判断对象是否有某个属性原创 2022-06-21 16:28:47 · 4274 阅读 · 0 评论 -
input输入框按回车键后自动刷新页面
最近遇到了一个bug很有意思就想记录下来,就是input输入框在输入完之后按下回车会刷新当前页面。产生这种问题的原因是当form表单只有一个输入框时,按下回车会去提交表单(触发submit事件),按照这个思路可以有下面几种解决办法在表单内在加一个看不见的input<input style="display:none;" />在表单内在加一个看不见的input...原创 2022-02-25 13:33:08 · 4204 阅读 · 0 评论 -
js数组去重的两种方法
使用es6中的 Setvar array = [1,2,3,2,3,4,4,5]function unique(arr){ var set = new Set(arr) return [...set]}这种方法只对数组里面为简单数据类型时有效2. 利用object中键值的唯一性function unique(arr){ var obj = {};res = [] for(var i = 0;i < arr.length;i++){ if(!obj[arr[i]]){ o.原创 2021-10-19 11:13:26 · 175 阅读 · 0 评论 -
javascript反转字符串的几种方法
1.利用字符串和数组的apifunction reverse(str){ return str.split('').reaverse().join('')}这种方法比较省事。。。推荐(主要代码少写着省事)倒序循环function reverse(str){ var str = "" for(var i=arr.length-1;i>=0;i--){ str += arr[i] } return str}入门级思路。。双指针循环这种方法大致思路就是在第一次循环原创 2021-10-18 14:33:51 · 1069 阅读 · 0 评论 -
多维数组嵌套扁平化的两种方法
一个数组嵌套这多层数组,扁平化能够更方便的操作数据,下边用两种方法来实现:使用es6中的flatflat(n)方法接受一个参数,在这里插入代码片递归原创 2021-10-18 11:05:43 · 509 阅读 · 0 评论 -
使用递归实现深拷贝一个对象
在实际的开发过程中,在实现一些业务逻辑时很容易碰到深拷贝,大多数(包括我)都会去使用JSON.parse(JSON.stringify())这个方法去实现,但殊不知这种方法存在诸多弊端(例如会将时间对象转化成字符串,而且会丢失undefined以及函数,具体请自行百度),下边用递归来实现深拷贝一个对象,上代码:function recursion(obj) { if (Object.prototype.toString.call(obj) !== "[object Object]") return f原创 2021-08-10 14:40:24 · 425 阅读 · 0 评论 -
js中将图片文件转成base64
js中将图片文件转为base的两种方式fileReader <input type="file" id="file" onchange="changeFile()">function changeFile() { var file = document.getElementById('file').files[0] //检验选择文件格式 var fileType = file.name.split('.').reverse()[0].toLowerCase() var原创 2021-06-21 22:16:41 · 1140 阅读 · 0 评论 -
在文字前后加上特殊符号的实现方法
在开发的过程中可能会也遇到一些需求在文字前后加上一些特殊符号,以书名号为例,现在简单说下两种实现方法js拼接字符串<div></div>var name = "平凡的世界"name = "《"+ name + "》"$('div').html(name)css伪类<div></div>div::before{ content: "《";}div::after{ content: "》";}$('div').原创 2021-03-09 14:44:51 · 54087 阅读 · 0 评论 -
自定义鼠标右键样式
今天碰到一个需求就是要在鼠标右键点击的时候出现自定义选项卡,话不多说直接附上代码首先先写一个列表在这里插入代码片js代码document.oncontextmenu=function(e){ var event = window.evnent ||e if(event.preventDefault) { event.preventDefault()//阻止右键点击的默认行为 } else { event.returnValue = false //ie浏览器 }}原创 2021-03-08 17:00:33 · 300 阅读 · 0 评论 -
Failed to execute ‘setRequestHeader‘ on ‘XMLHttpRequest‘ 报错处理
在工作过程中出现了这个错误 Failed to execute ‘setRequestHeader’ on ‘XMLHttpRequest’ ,结果就是ajax请求无法发送,我们大致翻译下就是请求头里出错导致的,原因我以前也没遇到过这个问题,查看资料后才知道是因为请求头里面放了中文导致的。解决方式但是我们真的必须把中文传给后端的话,可以使用encodeURIComponent()`来编译中文字符,然后后端接受到数据解码就可以了。...原创 2021-01-27 15:42:15 · 9401 阅读 · 0 评论