想做技术博客,但却更喜欢分享生活。

说说Event Loop

为什么会有Event Loop?这就要从Javascript的特点“单线程”开始说起了。
单线程是什么?意思就是在一个时间内程序只能做一件事。很多人都用过Java或者C++之类的语言,肯定能体会到这些语言的多线程带来的很多便捷性。然而,Javascript在设计之初的定位是用来处理用户交互以及操作DOM,如果Javascript也设计成多线程,势必会带来很复杂的同步问题。

应届毕业生应该怎样写简历?

非常惭愧的是,被标榜为“个性”、“张扬”、“有活力”的许多90后末班青年们似乎并没有在求职大道上将这些闪光点亮出来,反倒是奉行了“我低调我自豪,我有人品我骄傲”的一套原则,在个人最重要的门面——简历 这一环节上出了大问题。
说白了,我也不是HR,我也不是很明白简历究竟应该如何去写。但是我可能见过比较多简历,寒假的时候也正好读过许多相关的文章,我大概清楚很多人在哪些方面欠缺了火候,我也略微知道一些方法能更好的展示自己,能更好的向对方表达自己的能力。
在这里借此机会,也和大家一起交流讨论一下我们应届生应该怎样将自己最好的一面呈现在简历上。

[译]Javascript 2018: 你需要知道的和不需要知道的一些东西

Javascript已经发展成熟——我们不再是只使用它在网页上制作一些简单的交互,而是更多的使用它构建一整套大型的应用。当然了,随着当前Javascript的生态系统不断完善,这会比之前都更复杂。
作为一名职业的软件工程师以及两本与Javascript有关书籍的作者,Ethan Brown花费了很多时间去分析目前和Javascript有关的技术栈,并且从中得出了一位现代的“Javascript开发者”该如何去适应这些东西。
这里有一些Brown的关于Javascript生态系统的各个方面最前沿或者也是至少会很有用的预测,在2018里,机智的开发者可以去熟悉这些东西。

2018-01-04

2017总结与2018展望

2017年也还是这么顺顺利利的过去了。对于我来说,2017这一年给我带来的改变无疑是非常巨大的。
2018是我真正走向社会的一年,是“破而立”的一年。作为程序员,我更加需要在忙碌的生活中时刻给自己充电,以免被时代所抛弃。

利用 debounce/throttle 函数减轻对后端接口的压力

在前端开发过程中,偶尔会遇到类似点赞、抢购、切换之类的按钮。这类按钮一般会绑定一些需要和后端进行交互的事件。如果不对这些事件做限制处理,那么当用户量激增时无疑对后端的压力也会成倍增加。
一名优雅的前端工程师不仅要能对自己的展示页面负责,也要对后端接口的流量负责。此时我们就得思考,如何使用一些前端上的技巧减轻用户操作对后端的压力。
这里很简单的介绍两种函数: debouncethrottle

关于列表布局的样式分析

列表布局的方式有很多,我目前在项目中大量使用的方式有2种。
一种是使用display: inline-block;来达到列表布局的目的。
还有一种是使用float: left / right;来做到列表布局。

更早些的全局<table/>的方式目前见的比较少,而当下使用最新的CSS3display: flex在一些主流网站上也可以看见其身影。
今天我来说说前两种方式。

flex引起的子元素无法设置height: 100%的问题(safari & chrome)

flex布局无疑在移动端、PC端(ie10+)大大简化了前端的代码量,但是其存在的兼容性问题也不能被忽略,不同的浏览器解析flex的方式可能有所不同。用flex布局经常会发生一些奇怪的现象,而且flex套flex总是会觉得代码被污染…就很烦很难受。
这里着重分析了一种在safari和chrome两个浏览器下,对height: 100%的flex兼容性问题。