60 回复 | 直到 2015-02-24 15:22:04 +08:00
| vzch 2015-02-20 13:44:55 +08:00 ♥ 1 就一条,善用搜索 |
| billwsy 2015-02-20 13:46:59 +08:00 @vzch 之前也一直试着用搜索来学习新知识,但是对于一个全新的话题要怎么比较全面的入门呢?能不能分享一下经验? |
| vzch 2015-02-20 13:53:13 +08:00 ♥ 1 这必然不是新话题用站内搜索和 Google 选了几个链接 /t/152013 /t/126113 developer.mozilla.org/en-US/Learn… stackoverflow.com/questions/1… www.codecademy.com/en/tracks/j… |
| marcfizzy 2015-02-20 13:54:40 +08:00 ♥ 1 referrals.trhou.se/jamiefang 英语好的话可以看。14天免费。 |
| wfifi 2015-02-20 14:12:35 +08:00 via Android ♥ 1 弄本靠谱的书系统学下 |
| billwsy 2015-02-20 14:16:07 +08:00 via iPhone @wfifi 我也是这么想的,从上面的链接里得到了不少资源,不知道您有什么建议吗? |
| lxrmido 2015-02-20 14:18:44 +08:00 ♥ 3 把逼格降下来…… 看w3school |
| wfifi 2015-02-20 14:25:17 +08:00 via Android ♥ 1 @billwsy 我也说不上有哪些书,搜到一博文转给你http://m.baidu.com/from=942g/bd_page_type=1/ssid=0/uid=0/pu=usm%400%2Csz%401320_1001%2Cta%40iphone_2_4.3_3_534/baiduid=D06E4C031BDA18422B8B851D602AE3C4/w=0_10_javascript%E4%B9%A6%E5%8D%95/t=iphone/l=3/tc?ref=www_iphone&lid=13361741211869315281&order=1&vit=osres&tj=www_normal_1_0_10_title&m=8&srd=1&cltj=cloud_title&dict=30&sec=1470&di=db302e7e872ee780&bdenc=1&nsrc=IlPT2AEptyoA_yixCFOxXnANedT62v3IEQGG_ytK1DK6mlrte4viZQRASDXwAinGUoCb9m3QgcVMhiGu0VAo7RF2u_9Ss7wq7Ufbdenq6RO1HRAPfANq1sL4V_ |
| vzch 2015-02-20 14:29:38 +08:00 好吧,说点实际的。学 JavaScript 我走过不少弯路,就看书来说,由于前端更新的很快,旧的没必要看了, Javascript 高级程序设计比犀牛适合入门,然后蝴蝶犀牛,其他的有精力再看吧,写东西。漏了一个去年在用的好资源 docs.webplatform.org/wiki/Main_P… W3school 因为之前有不少错误,所以喷的人较多,这两年改了多少不确定,反正国内那个和国外的 w3school 都不算权威资料 |
| jianghu52 2015-02-20 14:57:55 +08:00 ♥ 1 弱弱的问一句,啥叫会。最简单的调onclick方法也是js。复杂的angularjs也是js。 |
| arachide 2015-02-20 15:04:58 +08:00 ♥ 1 javascript不等于jquery 也不等于前端 单独学最好 |
| akfish 2015-02-20 15:39:42 +08:00 ♥ 1 直接撸项目是最好的学习途径。 语言本身没什么好学的,当然除非这是你第一门语言。 |
| billwsy 2015-02-20 15:50:05 +08:00 @vzch 您给的链接非常适合初学者入门,谢谢! |
| sadaharu09 2015-02-20 15:50:35 +08:00 via iPhone ♥ 1 www.jikexueyuan.com |
| billwsy 2015-02-20 15:51:19 +08:00 @akfish 谢谢,我有一点C++/Python的基础。我想换了工作之后马上就有机会接触真的项目啦。 |
| arachide 2015-02-20 16:23:22 +08:00 ♥ 1 @billwsy 纯算法代码 javscript和c++几乎无需更改 |
| billwsy 2015-02-20 16:28:14 +08:00 @arachide 恩,我想我主要需要学习一下DOM等Web开发的基本概念。 |
| scarlex 2015-02-20 16:37:07 +08:00 ♥ 1 不知道你是要写前端还是后端? 前端的 js 基本都是围绕 dom 在展开,后端的 js 基本就是 Node.js / io.js 了。 如果要了解 js 的语法、特性、坑的话,可以看看 《JavaScript语言精粹》。 如果是前端的 js 的话,可以看看 《JavaScript DOM编程艺术》,接触一下原生的 dom 操作,对以后写前端很有帮助。 如果是后端 js 的话,入门书好像不多,朴灵的那本《深入浅出Node.js》感觉不适合入门,反而那些《Node.js实战》可能看起来会简单点。 之后就是各种库的使用了,那个阶段你直接看官方文档就行了。 |
| arachide 2015-02-20 16:45:48 +08:00 @billwsy dom htl/css简单使用范围有限 javascript可以上天入地下海 无所不能 |
| haozhang 2015-02-20 17:21:40 +08:00 via iPhone ♥ 2 javascript dom编程艺术 javascript 高级程序设计 javascript good parts (蝴蝶书) javascript web富应用开发(猫头鹰书) 从上倒下依次刷 |
| tonghuashuai 2015-02-20 17:37:58 +08:00 一边学一边用 |
| FrankFang128 2015-02-20 17:38:12 +08:00 via Android 阮一峰 |
| jacob 2015-02-20 17:54:19 +08:00 via iPhone javascript是最简单的语言,不是语言多简单,是资料实在太丰富了,随便一个特性,网上的资料都一堆。所以说是最好学的。 |
| learnshare 2015-02-20 18:03:08 +08:00 ♥ 1 自己整理的资料,质量一般,可以作为入门材料 JS 核心 github.com/LearnShare/… 浏览器端 github.com/LearnShare/… 服务端 nodejs.org/ |
| stonestyle 2015-02-20 19:39:12 +08:00 ♥ 3 希望对你有用 转「译」如何正确学习JavaScript www.crimx.com//2014/05/15… |
| hanan321 2015-02-20 20:59:42 +08:00 @haozhang 我就是按照20L说的这么刷的。 |
| blacktulip 2015-02-20 21:46:59 +08:00 via iPhone 先整明白正则…… 我觉得最难搞就是这个 |
| liubiantao 2015-02-20 22:45:45 +08:00 @blacktulip 整明白这个也入不了门啊, 毕竟楼主需要的是入门 |
| ryuutanyou 2015-02-20 23:02:27 +08:00 感觉每隔一段时间都会有这个问题,已经被问烂了,知乎上一搜一大把。 |
| railgun 2015-02-21 02:26:52 +08:00 我是从http://www.w3school.com.cn/ 上入门的,然后用chrome的控制台多试验几次,基本上就能搞懂了。再自己弄个项目练练手。自我感觉现在是刚入门的状态吧。 然后有几个概念比较难理解,闭包和promise。闭包现在基本上弄懂了,promise刚接触,还没弄明白。 |
| jokcy 2015-02-21 10:15:40 +08:00 via Android @akfish 不能这么说,需要本身的掌握对将来的学习决定有好处的。至少要理解js的类,继承,闭包,自己一些将来的比如promise什么的,不然后面学习会有坑 |
| sammo 2015-02-21 11:02:34 +08:00 建议以最快的速度去玩 js 库和框架,包括 gulp 这类工具 www.ruanyifeng.com/blog/2010/0… javascript.ruanyifeng.com/#tool javascript.ruanyifeng.com/nodejs/expr… |
| elegzg 2015-02-21 11:12:16 +08:00 @arachide 你看哪本书学习的? |
| sammo 2015-02-21 11:12:25 +08:00 知识面要广。 |
| elegzg 2015-02-21 11:13:46 +08:00 感觉JS比Java还难,楼主最好别碰,会被坑死 |
| sammo 2015-02-21 11:28:21 +08:00 对于如何选择材料,推荐 walkthrough + cookbook 之类的东西,上手快 这篇文章也可能能启发一下您的总体学习思路 ( 不单单对于 js 这门语言 ) ,千万不要低估自己的学习能力。 blog.eqoe.cn/posts/faq.h… |
| lijsh 2015-02-21 11:47:14 +08:00 www.douban.com/doulist/131… 《JavaScript DOM编程艺术》是很多人推荐JavaScript入门的第一本书,这是一本优点与缺点同样明显的书,优点是够简单,主要都是讲浏览器端与DOM相关的JavaScript,方便你quick & dirty地开始;缺点是对JavaScript语法的讲解非常缺乏,书中甚至有一些JavaScript的反模式(如给setTimeout传字符串而不是函数引用)。 《锋利的jQuery》是难得的国产好书,讲的是jQuery库的入门,看完这本书你应该能高效地处理浏览器端的脚本了。 一直到《JavaScript高级程序设计》才比较系统地讲到JavaScript的本质,包括数据类型、函数、数列、原型继承、闭包等JavaScript独有的概念,当然也包括浏览器端的脚本处理。 之后就可以自己随便看点什么了,包括订阅博客、看官方文档什么的。 |
| lijsh 2015-02-21 11:49:08 +08:00 看书的本质是求知,最最重要的是要自己多写,多看看别人代码是怎样实现,单看书没用。 |
| akfish 2015-02-21 12:11:30 +08:00 ♥ 1 @jokcy 不放到工程的背景里去学OOP一套东西,很容易就会染上过度设计的毛病 不放到工程背景里去看闭包、promise,可能纠结N久都对这两者真正的意义和作用似是而非 花30分钟大概看下JS的language spec,搞定语法直接开始撸项目 项目经验告诉我需要用OOP,查文档花5分钟就能学会JS的OOP 项目经验告诉我需要用FP、lambda之类的东西,查文档花5分钟就能知道JS闭包的存在 撸项目遇到了callback pyramid of doom,查文档花5分钟就能知道promise的存在 项目撸完,知识点差不多覆盖完,还有第一手的实践经验。 可能别人才看完教材,正在纠结第一个类要怎么命名才好。 按教材顺序线性学习不仅事倍功半,还不易于直接和你已有的知识体系融合,大量新技术没教材怎么办? 找个项目来做,启发式的寻找解决方案,学到的东西才牢固 |
| Agromania 2015-02-21 12:15:05 +08:00 可以从jQuery入手,尝试自己实现一些常见效果,比如内容折叠,TAB切换,幻灯片 |
| binarymann 2015-02-21 12:54:42 +08:00 @akfish 同意!但是我有个后续的问题,你提到了项目是关键,但如何找到一个合适能够涵盖到这些知识点的项目呢?就拿我自己来说吧,当时学Rails的时候也是通过项目上手,做了个类似留言板(感觉学web框架不少都是用留言板练手的 :),基本知识都通过实践了解了,但是由于视野窄,就深入不下去了,回到JS,譬如我用JS做个什么小项目,最主要的时候是凭我对JS的肤浅了解,根本就用不到FP、lambda、promise这些知识到项目中,导致练来练去还是CRUD...望指点! |
| jamlee 2015-02-21 13:06:18 +08:00 mdn 觉得是个很权威,很好的网站。 |
| jamlee 2015-02-21 13:07:29 +08:00 @FrankFang128 阮一峰的书说实在的 不是特别适合看。总感觉很怪。 |
| akfish 2015-02-21 13:07:50 +08:00 ♥ 1 @binarymann 要根据自己的情况循序渐进,有时候一个项目覆盖不完所有知识点很正常,多撸几个就行,而且项目太大超出自己的能力范围很容易烂尾。
要提升的话,找人做code review,多看别人的代码,看下别人是怎么实现同样的功能的,然后再试着重构自己的项目。 还有就是看一些框架的源码,尝试做一个粗略的clone版,实现核心功能达到学习目的就行。 如果做了N个项目还是感觉在撸同样的内容的话,就要think out of box,尝试去做一些没人做/极少人做的东西。 |
| vzch 2015-02-21 13:32:40 +08:00 @jamlee 阮老师的文章要配合朴灵的“注解”看,你懂的。他翻译的《黑客与画家》还不错 |
| vzch 2015-02-21 13:39:34 +08:00 @stonestyle 这个推荐是有点问题的,《JavaScript权威指南》不适合初学看,作为第一本不合适。《JavaScript高级程序设计》虽然名字带“高级”,基础和细节讲得更好,第三版翻译的还可以,我始终觉得对象和函数部分,高程要讲的比权威指南好 |
| jokcy 2015-02-21 13:58:58 +08:00 via Android @akfish 我明白你的意思了。不过我要说这样学习比较适合有编程基础的,最好有oop编程基础。不然当他们遇到这样的需求可能会根本想不到这个概念,从而踩到一个深坑里面去。所以我比较建议在使用一门技术或一门语言时至少通览一遍概念。
目前我个人也是你这样的学习方式,但是不知道题主是什么样的状态? |
| yangkeao 2015-02-21 14:05:37 +08:00 javaScript 需要学??//就当我没说过 我总觉得javaScript是语法最简单最混乱的语言,随便怎么写都是对的。。呜呜 有一点OOP基础,什么都好办~~~ |
| sneezry 2015-02-21 14:16:35 +08:00 via iPhone 我是在w3school入门的,虽然讲解不深,但简单明了的例子和亲自参与实践,绝对比一本厚重的书有吸引力。入门了再看书补习啦。 |
| vzch 2015-02-21 14:20:48 +08:00 有没有 OOP 你都要踩坑,传统的 OOP(如Java) 基于类的继承,JS 基于原型继承。而且 JS 的函数用法要比 C、Java 灵活,这也是坑的来源之一,刚开始觉得各种诡异风格那真是恶心 |
| akfish 2015-02-21 14:58:41 +08:00 @jokcy 所以我说“除非这是第一门语言”嘛。 而且学习方法也并不是非此即彼的,lz可以根据自己情况决定预备知识要学到个什么程度再开始撸代码。 一般有点基础的,都没太大的必要把教材全啃完再动手。 |
| lxrmido 2015-02-21 15:00:58 +08:00 在说JS之前…… 也许可以先看看这个CSS |
| jokcy 2015-02-21 15:32:06 +08:00 via Android @akfish 恩,其实第一门语言或者换个说法,编程基础还是非常重要的。有这个基础后面学习其他技术速度那是飞起来的 |
| StrayBugs 2015-02-22 01:34:06 +08:00 1. 少走弯路,[《如何正确学习 JavaScript 》](http://www.crimx.com/2014/05/15/how-to-learn-javascript-properly/) 2. 善用(google)搜索,会用英文,会在关键字后面加上 mdn 3. 键盘啪啪啪,练习不能停 |
| billwsy 2015-02-22 13:14:12 +08:00 via iPad @arachide 能解释一下为什么js无所不能吗?是因为node.js有很强大的能力吗? |
| billwsy 2015-02-22 13:16:00 +08:00 via iPad @haozhang 谢谢,我刚刚略读了DOM编程艺术和蝴蝶书,有了一些感觉,打算上手试一试,谢谢你! |
| arachide 2015-02-22 13:34:32 +08:00 @billwsy 桌面(qml msjs) 移动(appcelerator msjs) 游戏(cocosdxjsb unityscript) 服务器(nodejs)嵌入(tessel)测试(appleuiautomation telerikjs)nosql mapreduce(mongodb couchdb)大数据算法hadoop mapreduce(ms的hdinsight javascript) 都是javascript 谁能更广泛? 呵呵 吼吼 |
| RaymondYip 2015-02-23 20:09:20 +08:00 JavaScript权威指南 JavaScript语言精粹 多时间,多写代码才是王道 |
| arachide 2015-02-24 15:22:04 +08:00 ♥ 1 javascript是偶目前见过的唯一一种 框架会对语言产生干扰的语言 这也能解释为何很多前端会jquery但写不好javascript 谨慎用框架 搞不好就蹉跎岁月浪费生命 |