
JS
2c不高兴
一枚前端开发搬运工,面向api开发,百度谷歌搜索一键复制粘贴攻城狮
展开
-
Vue js IP批量格式化
vue js IP批量格式化原创 2023-01-09 14:36:00 · 1493 阅读 · 0 评论 -
js 通过id和pid 遍历树结构
function toTree(node){ node.forEach(function(it){ delete it.children; }) // 定义map/ var map = {}; // 这里可以重构数据类型,放回字段值 node.forEach(function(it){ map[it.id]=it; }) // 定义返回集合 var val=[]; node.forEach(function(it){ var parent = map[it.pid];原创 2022-05-19 12:24:14 · 2179 阅读 · 0 评论 -
前端rem.js
function rem(){ document.documentElement.style.fontSize=document.documentElement.clientWidth / 10.8 + 'px';}rem();window.onresize = rem;main引入 单位换成rem原创 2021-10-19 10:14:51 · 12021 阅读 · 0 评论 -
Promise使用能解决的问题,async的使用
Promise 是异步编程的一种解决方案: 从语法上讲,promise是一个对象,从它可以获取异步操作的消息;从本意上讲,它是承诺,承诺它过一段时间会给你一个结果。 promise有三种状态:pending(等待态),fulfiled(成功态),rejected(失败态);状态一旦改变,就不会再变。创造promise实例后,它会立即执行。一般来说我们会碰到的回调嵌套都不会很多,一般就一到两级,但是某些情况下,回调嵌套很多时,代码就会非常繁琐,会给我们的编程带来很多的麻烦,这种情况俗称——回调地狱。pro原创 2021-01-16 19:16:51 · 12028 阅读 · 0 评论 -
根据设计图设计rem比例
什么是remrem是相对长度单位。相对于根元素(即html元素)font-size计算值的倍数的一个css单位,也就是我们前端常说的适配单位rem。因为rem的特性相对长度单位,常被用来做移动适配,pc端页面不推荐使用rem。首先,为了计算方便,一般的话我们建议 1rem = 100px(设计稿px),要换算这样的比例需要设置html对应的fontSize,计算规则如下:屏幕的宽度 / 设计稿的宽度 * 基本宽度= fontSize如果基本宽度是100,那么 1rem = 100px(设计稿原创 2021-01-14 18:47:49 · 13586 阅读 · 1 评论 -
js单线程,事件循环,微任务宏任务
什么是宏任务和微任务宏任务包括:setTimeout setInterval Ajax DOM事件 微任务:Promise async/await微任务比宏任务的执行时间要早异步和单线程异步和单线程是相辅相成的,js是一门单线程脚本语言,所以需要异步来辅助异步和同步的区别:异步不会阻塞程序的执行,同步会阻塞程序的执行前端使用异步的场景:定时任务:setTimeout,setInverval网络请求:ajax请求,动态加载事件绑定任务列队和event loop(事件循环)原创 2021-01-14 18:43:36 · 11949 阅读 · 1 评论 -
JavaScript递归深拷贝
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Doc原创 2021-01-13 19:46:43 · 687 阅读 · 0 评论 -
JavaScript类型校验
一、typeof [value]用途:检测数据类型的运算符;细节点:特点:typeof检测出的结果都是小写字符串形式,包含对应的数据类型,所以typeof typeof []结果就是typeof “object”==》“string”;**特点:NaN/Infinity都是数字类型,检测结果正常是 “number”;弊端:typeof null的结果是"object"(这是浏览器的bug,因为所有值在计算中都是二进制编码存储,浏览器默认把前三位是000的当做对象,null的二进制编码前三位是0原创 2021-01-13 19:45:07 · 12183 阅读 · 1 评论 -
JavaScript原型
1.prototype每个函数都有一个prototype属性,被称为显示原型2.__proto__每个实例对象都会有__proto__属性,其被称为隐式原型每一个实例对象的隐式原型__proto__属性指向自身构造函数的显示原型prototype3.constructor每个prototype原型都有一个constructor属性,指向它关联的构造函数。4.原型链获取对象属性时,如果对象本身没有这个属性,那就会去他的原型__proto__上去找,如果还查不到,就去原型的原型,一直找到最顶原创 2021-01-13 19:37:01 · 582 阅读 · 1 评论 -
JavaScript 递归深拷贝
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Do原创 2021-01-13 14:51:56 · 613 阅读 · 1 评论 -
js数组平铺到对象中
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Do原创 2021-01-12 11:22:08 · 12408 阅读 · 0 评论 -
冒泡排序,递归(思考逻辑题)
1.中国有一套反导系统,某国向中国发射N枚导弹,导弹系统有一个bug,10000米导弹飞过来,射下来,发射过来[10000,5888,12000,6999,7000,3000,4500,1200,6000],需要多少个反导系统可以全部拦截下来。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="wid原创 2021-01-11 16:15:52 · 11746 阅读 · 1 评论