文档章节

如何成为一名优秀的JavaScript工程师

webxiaohua
 webxiaohua
发布于 2015/04/14 21:39
字数 917
阅读 12
收藏 1

基础

冒泡与捕获:它们的定义,它们的区别,如何阻止冒泡,javascript工程师需要对DOM tree有自己的理解。

闭包:了解什么是闭包、如何使用闭包、闭包的原理、闭包的真正原理,对JS的作用域链、垃圾回收机制有深入了解。

工具库

jQuery:jQuery作为现在使用最为广泛而且最简单的JS库,是一个JavaScript工程师必须掌握的艺术。一个有着真正开发经验的工程师,应当能正确的写出各种类型的选择器,回答为什么用bind来进行事件绑定、mouseover和mouseenter的区别。如果这些考不倒他,别急,live方法的实现原理、ready方法的实现机制这两个问题足以考查出他对DOM、浏览器差异的认识。

extJS、YUI、Prototype:这些工具库或框架都有各自的特点,需要从浅入深进行了解。

实际问题

解决实际问题考查的是你把知识融会贯通的能力、解决问题的能力、理解能力以及学习能力,这对综合素质的提高是一种很好的方式。

Autopager:自动翻页功能(实现方式参考http://blog.csdn.net/hfahe/article/details/5827483)是一个由浅入深考查自己能力的好例子。对滚动条事件的了解,pageHeight、windowHeight、scrollY的区别和关系是两个关键点,而最后对于事件的clearTimeout优雅处理是隐藏的考查点。

Lazyloader:许多人见过图片延迟加载的产品,但是他们是否有了解过背后的实现原理?从功能抽象到具体实现,onresize的考虑、延迟触发的考虑。

经过了前三个方面的了解,你应该已经对自己的基本水平有了一个大致的判断。下面的步骤可以让你了解自己能够承担什么样的工作,发展潜力多大。

项目

如果没有做过跨浏览器开发,浏览器插件开发,jQuery Mobile、sencha touch或者XUI,那么你还不算是一个完整的JavaScript工程师,记住,无论何时,技术总是无止境的,新生事物的不断出现要求我们必须不断去学习,做创建游戏规则的人。

技术视野

具有技术视野的人一般具有很大的发展潜力,他们未来不会仅仅只是一个普通的工程师,而有可能会成长为技术专家或者技术管理者。

在HTML5方面应当对新的语义标签、Canvas、Webworker、Drag & Drop有所经验或者了解;在CSS3方面,应当或多或少尝试过Radius、Gradient、Transform。当然,如果能够了解Mask,甚至能够知道Flexible Box的使用方法和原理,那么这个人对盒子模型的理解和对新知识的学习能力可以得到很好的体现。

JS开发工程师是最容易的职位,也是最难的职位。新的技术和框架层出不穷、浏览器版本日新月异、越来越多API的出现,好的JS开发工程师需要随时学习和更新许多知识,包括后台(Webworker、Websocket、Node.js)、UI(Canvas、Transparent)、动画(Transform、Transition、Animation)等方面。面试者是否有自我更新意识,他的技术视野多高决定了他能够涵盖的范围多大,他的未来发展潜力多大。

© 著作权归作者所有

共有 人打赏支持
webxiaohua
粉丝 10
博文 44
码字总数 29786
作品 0
普陀
程序员
私信 提问
前端学习之路(从入门到入坑...)

学习前端两年多了,拿了阿里巴巴实现offer,想结合个人经历总结的前端入门方法,总结从零基础到具备前端基本技能的道路、学习方法、资料。由于能力有限,不能保证面面俱到,只是作为入门参考...

阿小庆
06/14
0
0
给Web前端初学者的一些建议和学习方法路线

Web前端开发工程师是一个很新的职业,是从事Web前端开发工作的工程师。主要进行网站开发,优化,完善的工作。网页制作是Web 1.0时代的产物,那时网站的主要内容都是静态的,用户使用网站的行...

web前端小辰
05/24
0
0
[北京]年薪10万+ 诚聘优秀Web前端工程师

本公司是多家知名风投支持的创业企业,进行互联网最热最有希望的方向的产品开发,目前处于静默时期。现特招聘优秀有理想有创业激情的Web前端工程师一名,要求如下: 1. 3年及以上Web前端开发...

罗英
2011/06/30
1K
15
在 IntelliJ IDEA 下远程调试 JavaScript

谈起JavaScript调试,大家可能想到的就是FireFox下的FireBug,这毫无疑问,FireBug基本已经成为JavaScript开发 人员的必备工具。在本文中,将向大家介绍如何在IDEA下远程调试JavaScript,毕竟...

鉴客
2010/07/22
8.9K
0
成为一名优秀的Web前端开发者

Rebecca Murphey是来自于Bazaarvoice的一位软件工程师。今年早些时候,她发布了一篇博客文章“前端(JS)开发者的基本素质之2015版”,为JavaScript开发者在进行客户端web开发时使用的工具与...

tyou
2015/08/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Android :报错Your project path contains non-ASCII characters.

报错内容如下 Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different directory. See ht......

lanyu96
9分钟前
0
0
[LintCode] Number of Islands(岛屿个数)

描述 给一个01矩阵,求不同的岛屿的个数。 0代表海,1代表岛,如果两个1相邻,那么这两个1属于同一个岛。我们只考虑上下左右为相邻。 样例 在矩阵: [ [1, 1, 0, 0, 0], [0, 1, 0, 0, ...

honeymose
10分钟前
0
0
Nginx平滑添加模块

Nginx已经编译安装并运行了一段时间, 然后某一天, 发现需要用到某个模块但当初没有编译, 这个时候怎么办呢? 卸载重新安装肯定可以的, 如果Nginx版本没有变更的话, 则有一个相对平滑的方法来添...

老菜鸟0217
14分钟前
1
0
spark安装测试

spark安装测试 由于本地已经安装好hadoop相关组件,所以本文是在yarn的基础上对spark进行安装及测试 确保hdfs及yarn成功启动,hadoop版本为2.7.3 安装scala,由于本人安装的spark是2.4.0,对应...

-九天-
28分钟前
3
0
周末看完了《电能计量自动化技术》

整体质量还行,下面分别将心得记录如下: 第一章:发展历程可以看看,现在算是智能电网阶段 2:讲主站系统。以文件进行各模块的交互很值得思考,尤其是批量数据,多团队合作的情况下。另外线...

max佩恩
48分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部