ES6的一些方法最近在项目中经常的用到,空闲的时候,自己对一些常用的API进行了整理和对比.虽然有的特效浏览器支持不是太友好,但是可以通过babel进行转换.还有一些常用的ES6方法,例如find,findIndex,以及一些数组的方法, 文档持续更新中…

阅读全文 »

异步操作是 Javascript 编程的麻烦事,麻烦到一直有人提出各种各样的方案,试图来解决这个问题,从最早的回调函数,到Promise,到 ES7 的asyncawait,每次都有改进,但又让人觉得不彻底,他们都有额外的复杂性,都需要理解抽象底层运行机制.

ES7 引入的 async/await 是 Javascript 异步编程的一个重大改进.提供了在不阻塞主线程的情况下使用同步代码异步访问资源的能力,async可以让一个方法变成异步,await必须用在爱上一年从内部,下面结合自己实际项目中遇到的问题,和自己对它的一些理解,将从不同的实例说明 async/await 的用法:

阅读全文 »

微信小程序已经开放个人注册有一段时间啦.做web开发的应该都不陌生,也有不少公司为自己的产品开发了相关的小程序.基于微信庞大的用户量,来引流.最近自己也开始在研究小程序相关的知识,体验了一下小程序的开发,说实话,有web前端开发的基础,入门小程序开发不难.但是如果真正的去写那些小程序的API倒还是有一定的难度,好在我们目前大部分人都还是停留在使用API的程度上.对着API文档进行相关的开发.

目前我自己为了学习小程序开发,也自己写了一个入门级别的小程序.已经上线了.在小程序入口可以搜索到的.一个美容美甲的小程序.搜索晨浠关键词 即可搜索得到的.

阅读全文 »

文件上传

对于做web开发的我们,文件上传需求肯定不会陌生,也会经常遇到.不过在解决文件上传的问题的时候,有时候也不是完全是有前端的问题,同时我们可能还需要懂点服务器相关的知识,才能够很好的和后端联调,程序出现了问题,也能够迅速的定位问题的,然后很好的解决.有时候服务器端限制了文件上传的大小限制,或者前端上传文件Ajax超时了等等.所有出现了问题我们就得慢慢的一步步的来排查啦~

上周在做公司内部系统的时候,就遇到了一个文件上传的.说起来还挺坑爹的,也有自己的一部分原因吧.没有测试一些异常情况,文件过大或者网络过慢,请求超时了.一直没有上传成功.发布到线上了,同时在批量上传商品的时候却不成功.导致系统无法使用文件批量上传.最后找到开发反馈,然后这块的前端是我负责的.于是后果直接可想而知啦.肯定对我的印象不太好啦,赶紧查看问题的根源,于是跟后端对接起来,打个分支,修复问题,重新发版,完美结束.

阅读全文 »

科普一

从输入网址到页面呈现过程:
1、浏览器输入:`www.leadbank.com` 通过DNS(网域名称系统)解析成IP地址: `103.6.220.58`
2、客户端与服务器建立TCP/IP协议
3、传输层向服务器发送请求协议(HTTP/HTTPS/FTP等)
4、服务器响应请求,返回指定的URL数据或错误信息(如果设定重定向则重定向到新的URL地址)(Nginx反向代理)
5、客户端下载对应文件后:解析HTML以构建DOM树 –> 构建渲染树 –> 布局渲染树 –> 绘制渲染树,最后呈现给用户
> DNS解析优先顺序: 先读缓存--Hosts文件--路由缓存--DNS缓存--根域名
> DNS劫持:从DNS缓存数据库里找时被恶意改为其他的网址,所以请求到的是其他网址
> Nginx反向代理:客户端请求Nginx服务,Nginx请求应用服务器,返回数据给到客户端,访问量大的网站一般采用Nginx反向代理,确保一台服务器挂了还有其他服务器正常运行,用户依旧可以正常使用。
阅读全文 »