无论时windows上的Fiddler、还是Mac上的Charles都可谓是抓包神奇,我们通常用它来抓取手机、网页甚至是模拟器的请求。但是在前端开发中,还有一种很普遍的场景,那就是node命令行的请求。在做node开发中,我们除了用侵入代码的方式来代理网络请求,我们更希望的是使用Charles这样的抓包工具来处理,今天的小技巧就是node终端的请求使用Charles进行抓包。
学习ES6新特性总揽
ES6的推行感觉是极大的解放了生产力,各种方法得心应手,但回头看了看浏览器支持,默默的板砖去了。
新语法在各种浏览器上支持并不是特别好,要想直接用在生产环境还有很长的撸要走。不过有万能的Babel,可以轻松的让你使用最新的javascript语法,而不用等到浏览器的支持。
z-index是如何工作的【译】
不管你信不信,但HTML元素的确是放在三维空间中的。除了平时我们知道的x轴和y轴,元素通过z轴控制他在第三个维度的显示。
像我们熟悉的margin
, float
是用来控制元素在x轴和y轴的位置的。而z-index
就是用来控制元素z轴的显示的。
我所理解的Promise
参考:【ES6复习】异步函数
场景1:多个接口异步请求数据,需要通过前一个接口的返回值来决定后一个接口如何处理。我们一般会把第二个请求放到第一个请求执行成功的回调函数里面:
$.ajax({
url: '/data/a',
success: function (data) {
$.ajax({
// 第一个请求完成后执行第二次请求
url: '/data/b',
success: function (data) {
// ......
}
});
}
});
场景2:需要从多个接口获取数据(接口之间无先后顺序),重新组织好数据后渲染到页面。
像上面这种解决办法并没有哪里不对,只是当多几个接口的时候,嵌套的层次就会很深,不便于后期的阅读。
而且如果是场景2也像这么写,又会导致一个一个接口去请求数据,效率降低了。
那么,有什么好的解决方案呢。除开从数据上入手以外,那就是今天的主角Promise。
移动端布局神器-Flex
准备写着这篇博客很久了,最近两个月都在公司实习,都没空搭理博客了:(。这两个月在公司实习学习了很多移动web相关的知识点,有空从了wiki里面搬出来。
言归正传, 为什么要强调移动端呢,这是因为flex(弹性盒布局)是css3提出的新属性,所以应用到PC端可能并不太适用。Flex布局,可以简便、完整、响应式地实现各种页面布局,为盒状模型提供最大的灵活性
我也来说说BFC
“BFC”是什么鬼?一直都不清楚。上次在面试被问到了,完全不晓得是什么东西。提示说是块级格式化上下文,还说肯定用过的,我就纳闷了,这么高级的东西听都没听过更何况是用呢。
面试完后百度了一下,居然搜不到太多的资料,还真怀疑自己听错了。果断选择Google,发现W3C是这样定义BFC(块格式化上下文 block formatting context)的:
Floats, absolutely positioned elements, inline-blocks, table-cells, table-captions, and elements with ‘overflow’ other than ‘visible’ (except when that value has been propagated to the viewport) establish new block formatting contexts.
《高性能网站建设指南》
纯手动搬运工《高性能网站建设指南》,介绍14条高性能网站建设的规则。
事实上我们在谈论如何搭建文档的后台服务的时候,往往容易忽略前端处理的一些细节。如果我们把两者相互结合好了,肯定能把网站的性能发挥到极致。
那么我们先来想一下,用户访问web页面的时候时间都花到哪儿了?
1、大量的HTTP请求并行发生。
2、加载各式各样的脚本以及组件。
3、…