12 2018 档案
摘要:1.数组拍平也称数组扁平化,就是将数组里面的数组打开,最后合并为一个数组 2.实现 a:递归实现 b:reduce实现 c:flat 参数为层数(默认一层) d:扩展运算符 e:toString f:apply
阅读全文
摘要:1.第一种方式就是最简单的set去重(o(n)) var arr = [1,2,2,4,3,4,1,3,2,7,5,6,1] var newArr = new Set(arr) 2.第二种方式就是用indexOf来去重(o(n^3)) 判断新数组中某个数字是否存在 function fn(arr){
阅读全文
摘要:1.简介 熟悉vue的小伙伴应该熟悉vue中的v-model的使用方法,他的作用就是来实心双数据绑定的,那么先在来说明一下双数据绑定的原理 它的底层原理是由Object.defineProperty实现的 2.Object.defineProperty用法 作用: 给一个对象添加或者修改属性,返回一
阅读全文
摘要:1.什么是事件循环? JavaScript为单线程执行的,所以是从上到下依次执行,js分为两个任务,宏任务和微任务 首先执行宏任务(第一次就是执行所有的同步代码),再执行所有的微任务,执行完毕之后再次执行 宏任务,执行完毕再次执行所有的微任务,也就是: 宏任务 --> 微任务 --> 宏任务 -->
阅读全文
摘要:1.为什么会有深拷贝与浅拷贝? 目的:我们要实现一个对象的拷贝,不想改变原来的对象 这样的话我们会有两种解决方案;一个就是浅拷贝,一个是深拷贝 1.什么是浅拷贝? 当一个对象只有单层的情况下,我们就可以使用浅拷贝来实现我们的目的; 当一个对象是多层情况下,我们使用浅拷贝的话,就不会有以上的效果,所以
阅读全文
摘要:如果按照以上的,数组都是同位数的,sort就会正常的执行 如果 var arr = [5,100,36,12,6,5] 他的执行完之后就会变成 [100, 12, 36, 5, 5, 6] 很明显是错的 因为sort函数的原理是 根据数组的数字中的第一个字符比较来排序的,然后在从第二个字符比较排序,
阅读全文
摘要:1.node.js可以解析JS代码(没有浏览器安全级别的限制)提供很多系统级别的API,如: 文件的读写 进程的管理 网络通信等 2.Node.js是一个基于ChromeV8引擎的JavaScript运行环境,Node.js非阻塞式I/O的模型 ,使其轻量又高效 浏览器(js运行环境)与node.j
阅读全文
摘要:syle-component 使用方法 const 组件名 = ellipsis({ component:styled.div``, width:'50px'(可选),宽度 lineClamp:1(行数) }) stylus 使用方法 ellipsis null,1 参数1:宽度(可选) 参数2:行
阅读全文
摘要:原理: 给要加1像素的元素一个相对定位,然后给这个元素添加上一个伪元素,给这个伪元素一个绝对定位,让他的宽高根据dpr的值放大相应的倍数为1放大100%,为2放大200%,为3放大300%然后在使用css3属性等比缩放0.5,或0.3333倍,最后拿到的结果就是1像素线 stylus 使用方法 bo
阅读全文