要怎么达到《精通 JavaScript》?

2014-03-21 20:15:03 +08:00
 alexapollo
自己写网站有一段时间了,但感觉只会Jquery,而不懂JavaScript。
到了需要《精通JavaScript》的时候了!

我想要知道的几个点:
1、书籍:书籍的推荐与筛选方法
正在看 《JavaScript权威指南第六版》、《JavaScript语言精粹》
2、社区:对学习比较有帮助的社区
3、follow:哪些牛人值得follow
4、汇聚:哪些站点常有干货,值得阅读
5、guide:语言的入门tutorial,以及IDE推荐等等

回答自由发散!
4633 次点击
所在节点    问与答
37 条回复
jakwings
2014-03-21 21:11:04 +08:00
上面列的点少了一个要点:练习写代码。其它都不及练习重要,按照自己的水平找一些别人写的东西研究研究,就可以边练习边借鉴了。
其它感觉比较浮云,Google 一大把,等你水平提升了,自然就感觉到哪些东西是适合自己的了,根本不用别人去指点。
zzNucker
2014-03-21 21:18:12 +08:00
建议你别看那两本,先看《javascript高级程序设计》
alexapollo
2014-03-21 21:25:26 +08:00
@zzNucker 恩,是为什么呢?是不是和jakwings说的一样,写代码比较重要?这个我非常认同。
@jakwings 同意。。你觉得有没有好的开源工程可以借鉴?
zzNucker
2014-03-21 21:29:19 +08:00
@alexapollo 因为这本书对你帮助更大,权威指南更像一本参考书,适合又有时候查阅。 语言精粹不适合打基础。
inee
2014-03-21 21:40:42 +08:00
加入一些编程小组,定制一个共同任务

或者两人比赛
jakwings
2014-03-21 21:46:50 +08:00
@alexapollo 我认为循序渐进是最好的,什么「高级程序设计」都无法硬塞高级概念给你,除非你正在尝试设计要用到高级概念的程序,等你真的在设计高级程序时,自然会静下来看那本书的高级内容了。能用简单的方法解决的问题最好用简单的知识的解决,当遇到大规模的问题时,才用到大型架构的思想。当尝试过架构大型或高级的程序时,便会懂得以后是否应该让简单的程序变得不那么简单,为其增加可扩展性或稳定性。

我曾经不断搜集网络资料,但是很多资料都被束之高阁,实在是浪费时间。现在我一般只为会不懂的问题去搜索资料,才不管那些资料以后还能不能找得到。

我的最高水平只不过是写了个简单的博客系统(PHP 或 Javascript)。jQuery 会限制你的眼界,让你变得懒惰,不过 jQuery 本身就是一个很好的开源工程,你可以重点研究里面的一些网络请求相关的函数的实现,各种获取 CSS 数据的函数的原理(其实那些函数真的很有参考性质,以后要模拟时临时参考一下就好),另外看《如何做到 jQuery-free》:
http://www.ruanyifeng.com/blog/2013/05/jquery-free.html )。
跟 jQuery 差不多的函数库还有 Minified.js MooTools.js Zepto.js 等等,其中对于 DOM 元素的操作,还有计划任务队列操作,HTML 模板生成/应用函数,等函数,都值得参考。
ivenvd
2014-03-21 21:48:31 +08:00
书名号逼死强迫症,语文老师哭晕在厕所里。
jsonline
2014-03-21 21:51:25 +08:00
你这书名号令人费解。去知乎上搜就知道了
vilic
2014-03-21 21:51:43 +08:00
<JavaScript 高级程序设计> 不错, 但是那只是相对高级一点的内容, 谈精通还差很多. 之前群里有个朋友, 是其他语言转过来的, 直接上标准, 这可能是比较快的精通语法的方式吧, 但也很枯燥, 反正我是没那个耐性的.
但即便是精通了语法, 用法还需要时间的积累和感悟,,, 我不是善于读的书的人, 虽然也觉得读书有用, 但凡是到了最顶端, 资料可能就没那么丰富了.
fox
2014-03-21 21:55:39 +08:00
先把标点符号用对。。。
jakwings
2014-03-21 21:55:46 +08:00
@jakwings 上面扯的都是前端,因为后端的 Javascript 我还没什么经验。既然选择了 Javascript ,前端这么丰富的世界都学不好,后端那相对无聊一点的世界可能更学不好了。在前端可以学会驾驭各种复杂的界面和流程,也能学到很多的。后端可能就不单单是 Javascript 了,还有服务器……

总之自己定/找个项目写代码吧,根据需求来选择要掌握的知识点。
alexapollo
2014-03-21 21:56:06 +08:00
@zzNucker 语言精粹前面有很多关于语法解析的内容,第三章的OO说的清楚,但是也很简略。
确实比较适合先有几个JS项目的经验再看。
看了下《javascript高级程序设计》,干货,各方各面都有写,不过页数有点多。。等我这两天先把精粹过完然后开始看
alexapollo
2014-03-21 21:57:52 +08:00
@inee 有道理!我是和另外一个哥们一起在写工程,他在看jquery,我在看js,准备过几天对一下。。
alexapollo
2014-03-21 22:04:12 +08:00
@jakwings 恩,前一段看到了 https://github.com/HubSpot/youmightnotneedjquery 这个项目,用JS实现jquery的所有功能,挺有意思的。
现在学习只是为了对js有一个全局的了解,然后项目里用到的时候力争用O(1)的效率搞定。
CSS selector挺感兴趣的,一直猜测是做了个全局hash或者树状结构。
“计划任务队列操作,HTML 模板生成/应用函数” 这些都没了解过。

有个比较想搞清楚的就是jquery里的ajax实现。
Sivan
2014-03-21 22:06:27 +08:00
只想说犀牛书别看中文版
alexapollo
2014-03-21 22:07:30 +08:00
@vilic 恩,对。
标准,优秀第三方库,最佳实践,都是目标。
直接上标准可能得先背一段时间,不过我觉得方法也是靠谱的。。
以前读过gcc和glibc,看的头晕眼花
alexapollo
2014-03-21 22:08:32 +08:00
@jakwings 咳咳,我懂后端,从内核到服务器,但是前端是小白啊
alexapollo
2014-03-21 22:09:39 +08:00
@ivenvd
@jsonline
@fox
发帖的时候已经预料到了。。但转「」有点麻烦 哈哈~
zzNucker
2014-03-21 22:09:59 +08:00
别看标准啊,要看死人的。。
alexapollo
2014-03-21 22:11:39 +08:00
@Sivan why?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/105323

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX