互联网络

前端经典书籍

1. JavaScript高级程序设计 (红宝书)2.JavaScript权威指南 (犀牛书)...
代码星球·2020-06-29

D3基本概念

1.选择集d3.select()//选择第一个d3.selectAll()//选择全部2.绑定数据datnum()//绑定一个数据到选择集上data()//绑定一个数组到选择集3.输出数据varbody=d3.select("body");varp=body.selectAll("p");p.datnum(str);p...
代码星球·2020-06-29

Array.map和parseInt的用法

Array.map的参数Array.map((item,index,arr)=>{},thisValue)map的callback参数分别是数据项,索引,数组本身,thisValue可以指定callback中的this值parseInt的参数parseInt(str,radix)该方法,始终将str转换为10进制...
代码星球·2020-06-29

首屏和白屏时间计算

首先明确,首屏和白屏的时间计算,没有明确的API可以得到。白屏=开始显示body的时间-开始请求的时间首屏=首屏内容渲染结束的时间-开始请求的时间具体计算方法如下:1.白屏支持performanceapi,开始请求的时间performance.timing.navigationStart<html><...
代码星球·2020-06-29

文件上传总结

文件上传总结文件上传的方式有哪些(Flash已经淘汰,不再提及)目前常用的只有2种1.form上传就是使用inputFile控件,form的enctype必须是multipart/form-data<formmethod="post"action="http://uploadUrl"enctype="multip...
代码星球·2020-06-29

html5 drag事件用法

drag事件用法html5的drag事件总共有7个,还有一个事件传递对象拖曳目标对象ondragstart拖曳开始ondrag拖曳中ondragend拖曳结束释放对象ondragenter进入释放目标ondragover在目标中拖曳ondragleave离开释放目标ondrop释放各个事件的触发顺序ondragstar...
代码星球·2020-06-29

云计算基本概念IaaS,PaaS,SaaS和Serverless

IDC卖硬件,服务器托管和租赁,机柜为主,偏大型IaaS(InfrastructureasService)基础设施即服务,卖硬件,机房,服务器,租赁单位更小,更灵活PaaS(PlatformasService)平台即服务,卖操作系统,包括数据库软件,Web服务器,负载均衡器等。SaaS(SoftwareasServic...

mobx的实现原理

1.mobx是基本概念Observable//被观察者Observer//观察者Reaction//响应1.1在被观察者和观察者之间建立依赖关系通过一个Reaction来track一个函数,该函数中访问了Observable变量,Observable变量的get方法会被执行,此时可以进行依赖收集,将此函数加入到该Obs...
代码星球·2020-06-29

正则表达式基本概念

1. 分组 () 包裹的就是分组,可以得到结果,或者进行交换等整体操作2. 捕获() 分组默认就是捕获组,(?:) 加上?:,就是非捕获组,只参与匹配,整体结果中会存在,消耗字符,分组不会在结果中,节约性能3. 环视(?=)(?!)(?<=)(...
代码星球·2020-06-29

前端性能分析方法

1.代码覆盖率Coverage打开chromeDevTools,ctrl+shift+p,输入coverage命令,回车,调出coverage面板进行录制,即可分析,加载或执行期间的,js被执行到情况,未被执行的js,就是可以优化的点,可以移除死代码,或懒加载非必要代码2.CPU和内存Performancemonito...
代码星球·2020-06-29

前端性能优化10个方面

1.加载优化1.压缩合并2.代码分割(codespliting),可以基于路由或动态加载3.第三方模块放在CDN4.大模块异步加载,例如:Echarts,可以使用require.ensure,在加载成功后,在显示对应图表5.小模块适度合并,将一些零散的小模块合并一起加载,速度较快6.可以使用pefetch预加载,在分步...

promise retry实现

retry(pf,{times:3,//每次延迟delay:1000,//每次延迟增量increment:1000,shouldRetry:(err,opts)=>{//判断是否应该继续returntrue;},onRetry:(data)=>{//收集error和次数信息}}).then(data=>...
代码星球·2020-06-29

手写图片懒加载

//50ms节流方案letlazyLoadThrottle=throttle(lazyLoad,50);window.addEventListener('scroll',lazyLoadThrottle);//raf的一帧节流方案varisScroll=true;window.addEventListener('scr...
代码星球·2020-06-29

Promise的串行,并行,并发

<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><met...
代码星球·2020-06-29

爬楼梯问题

1.爬楼梯问题问题:(https://leetcode-cn.com/problems/climbing-stairs/solution/pa-lou-ti-by-leetcode/)假设你正在爬楼梯,需要n阶你才能到达楼顶。每次你可以爬1或2个台阶,你有多少种不同的方法可以爬到楼顶呢?分析:动态规划,将当前问题分解为...
代码星球·2020-06-29