JavaScript
qq_43138808
这个作者很懒,什么都没留下…
展开
-
手动实现flat函数
1.数组扁平化首先何谓数组扁平化?我也不会解释,直接上代码,就很直观//这是原始数组,可以看到嵌套了很多层的[],也就是很多维数组let arr = [1, 2, [2, 3], [10, 11], [3, [4, [5, [6, [7, [8, [9]]]]]]]];2.Array.flat(n)Array.flat 函数支持传入一个数值类型参数 n ,代表我们希望的能够扁平化的维数//arr.flat(1)[ 1, 2, 2, 3, 10, 11, 3, [ 4, [ 5, [Arra原创 2020-11-10 17:52:35 · 1492 阅读 · 0 评论 -
Js数组去重
Js数组去重1.问题数组去重是我么一直都会遇到的问题,网上也很多对于这方面的解决问题,如果是一些简单的数据,我们可以使用 set数据结构 或 for循环+if等判断 或 Array.filter 等等,常规的方式还是挺多的,但是对于存在特殊数据类型的数组,比如 NaN和对象类型{},上面这些方法就有点捉襟见肘2.解决方式function unique(arr) { let obj = {}; return arr.filter(item => { let res = JSON.原创 2020-11-10 12:02:22 · 149 阅读 · 0 评论 -
【leetcode1027.独一无二的出现次数】
1.题目描述给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数。如果每个数的出现次数都是独一无二的,就返回 true;否则返回 false。示例输入:arr = [1,2,2,1,1,3]输出:true解释:在该数组中,1 出现了 3 次,2 出现了 2 次,3 只出现了 1 次。没有两个数的出现次数相同。输入:arr = [1,2]输出:false2.代码和思路2.1 代码function once(arr){ let obj={}; for(let i=0,l原创 2020-10-30 12:49:54 · 209 阅读 · 0 评论 -
排序算法-冒泡排序-优化
冒泡排序冒泡排序是最常见也是非常容易理解的一个排序方法;我们直接上代码function bubbleSort(arr){ for(let i=0;i<arr.length-1;i++){ for(let j=0;j<arr.length-i-1;j++){ if(arr[j]>arr[j+1]){ //es6解构赋值 [arr[j],arr[j+1]]=[arr[j+1],arr[j]]; } } } return arr;}这样我们就实原创 2020-09-06 01:47:02 · 128 阅读 · 0 评论 -
vue实现点击导航栏切换变色的简单方法
最近写到导航栏的时候遇到一个问题,就是我们要实现导航栏中的被选中的项目高亮,而其他的项目保持原来的颜色,对于这种其实是有两种情况的;情况1—导航栏是通过v-for遍历生产的这种生成导航栏的情况还是比较多的在进行遍历的时候我们会去获取被遍历数组的两个东西,一个是item ,一个是index//就像这样<li v-for="(item,index)" in List :key="index"></li>当我们要给 li 动态的绑定一个样式的时候,就需要判断在什么时候绑定,在原创 2020-08-30 16:52:18 · 8625 阅读 · 1 评论 -
Postman在进行post请求的时候一直返回undefined的解决方案
1.postman最近因为在学node,会编写一些路由,在测试接口的时候经常使用的是路由器来访问接口,这样就不太方便,postman就可以比较好的解决这些问题,而且如果你要是测试一些数据,也可以在postman里面进行测试。2.postman的post请求测试2.1 解决方式12.1.1 在项目中安装并引入body-parserbody-parser是解析req.body的,所以一定要装,如果装好了问题解决了,就不用往下了。//安装body-parsercnpm i body-parser -原创 2020-08-24 15:58:13 · 5994 阅读 · 2 评论 -
深拷贝和浅拷贝
1.深拷贝和浅拷贝的含义深拷贝和浅拷贝是比较常遇到的问题,但是何为深拷贝?何为浅拷贝呢?在讲两种拷贝之前我们首先还是需要了解一下javascript中数据的存储方式。1.1基本数据类型 和 引用数据类型javascript有7种数据类型,但是总的可以划分为两大类,一类是基本数据类型,一类是引用数据类型。对于 基本数据类型:基本数据类型是存放在栈内存中,当我们对栈中的基本数据类型进行拷贝的时候,栈内存会开辟一个新的内存来存放我们拷贝产生的变量;即如图,当栈里面已经存储了一个变量a,并且a=1,我们进原创 2020-07-15 02:06:00 · 153 阅读 · 0 评论 -
小红书笔试题:paddingNum
题目的意思是让我们对数值进行格式处理,每隔三位数就插入一个逗号来进行分割。解题思路最主要的是使用 toLocaleString方法,但是本方法如果直接对数据进行处理的话只会保留小数点的后三位,这样对于小数多于三位的数据就比较不友好。所以我们需要先对数据进行处理再使用toLocaleString方法。同时还存在的问题就是小数部分的逗号应该是从前往后数3位进行划分,跟整数部分的划分是不一样的,所以就需要更多的处理。具体思路将数值划分为整数部分和小数部分;整数部分直接使用toLocaleStrin..原创 2020-07-13 16:32:28 · 479 阅读 · 0 评论 -
Ajax前后端交互(1)
Ajax的四个步骤第一步:创建Ajax对象var xhr=window.XMLRequest();但是这种方法ie8以下的浏览器是不能使用的,ie8以下的浏览器创建Ajax对象的方法是ActiveXObject(“Mircrosoft.XMLHTTP”)。我们可以通过以下方法来实现浏览器的兼容:var xhr = null; try{ xhr = new XMLHttpR...原创 2020-03-27 20:14:50 · 120 阅读 · 0 评论 -
javascript对象
js对象对象的创建var obj =new Object();这样就会创建出一个名为obj的对象,语句十分的简单,但是也比较坑,要注意的是Object里面的O要大写,否则在浏览器调用对象的属性及属性值的时候会没有东西输出来。对象属性增对象既然创建出来了,就要对它添加属性,并且赋值。第一,常规的赋值。//语法:对象.属性=属性值;obj.name = "duludulu";这...原创 2019-11-21 11:18:29 · 89 阅读 · 0 评论