相信每一个想要学习前端的人对于前端三剑客 html+CSS+JS 都不会陌生, 这些可以说是一个前端的基本配置, 而在前端的世界里, 没有什么是 JavaScript 实现不了的, 你真的了解 JS 吗? 为什么学习 web 前端开发要学习 JavaScrip, 并且必须要掌握, 且精通?
关于 JS 有一句话: 凡是可以用 JavaScript 来写的应用, 最终都会用 JavaScript,JavaScript 可运行在所有主要平台的所有主流浏览器上, 也可运行在每一个主流操作系统的服务器端上. 现如今我们在为网站写任何一个主要功能的时候都需要有懂能够用 JavaScript 写前端的开发人员.
而后端代码是用什么编写的则无所谓 -- 不管是 Java,PHP,.NET,Node.JS 还是其他 -- 但是客户端就一定需要一个 JavaScript 开发人员. 事实上, 现在很多开发人员依然没有认识到 JavaScript 有多么强大.
JS 实际使用的功能和领域, 下面我们就来了解一下.
1. 数据可视化
数据可视化是当下大家所推崇的一种互动展示模式, 而 Java 拥有 ECharts,Dygraphs.JS,D3.JS,InfoVis,Springy.JS 等多种可实现数据可视化效果的框架.
2. 移动应用
PhoneGap 将 WebView 带向了移动应用, 同时也将 JavaScript 带向了移动应用.
3. 服务端
因为 V8 的性能将 JavaScript 带到了一个新的高度, 于是 Node.JS 诞生了 -- 前端, 后台都可以用 JavaScript, 现在任何一个网页都离不开 JavaScript.
4. 全平台应用
一份代码构建移动, 桌面, Web 能够全平台应用, 在 Eletcron 上运行 Ionic, 就意味着无限的可能性.
5. 游戏
如果你对网页游戏仅仅停留在 Flash 的时代, 认为只有 Flash 才能做出非常绚丽的游戏特效, 那就错了. JavaScript 也可以做出华丽的特效!
6.VR
利用 3D 游戏引擎, 如 Three.JS, 你也可以来创建一个 3D 世界.
7. 硬件
Tessel 可以直接在设备上运行 JavaScript, 连服务器都不需要, 然后像做网络开发一样通过用 IDE 和库去开发它, 上传新的固件只需一句 tessel 推送指令.
8. 操作系统
那么是否有可能仅使用 Node.JS 创建一个操作系统呢? NodeOS 了解一下, 虽然它是用 Linux 内核来处理各种底层任务, 比如硬件通讯什么的, 但是除此之外, 使用的都是 Node.JS.
我总结了一些实战意义的 JS 学习经验:
1: 首先要紧紧抓住它的地位怎么轻松学习 JS 时刻都不能忘记, 否则很容易犯 "一叶障目不见泰山" 的错误. 不要学了很久就知道 JS 是编程语言, 就是写代码, 而且特点就是乱七八糟就完了, 那样是学不好 JS 的. 要时时抓住它的地位, 确切的说是它在整个 Web 中的地位: 它属于前端的核心, 主要用来操控和重新调整 DOM, 通过修改 DOM 结构, 从而来达到修改页面效果的目的. 要用这个中心思想去指导后续的一切 JS 的学习, 并且形成条件反射.
2: 要有一条清晰的学习路线这个只能是过来人给你提供参考了.
我的学习路线如下:
A:JS 基础部分, 如: 定义变量, 函数, 数组, 字符串等的处理, 内置函数, 内置对象等.
B:JS 面向过程编程思想, 封装出各个函数, 试着用这些去做一些常见的小功能, 如: 选项卡, 自定义多选按钮, 自定义播放器, 3D 幻灯片;
C:JS 面向对象编程思想, 试着去封装一些你自己的对象, 提供出有意义的接口出来;
D: 学了上述的内容, 然后学常用的库, 这里必须学 jQuery;
E: 学基于 jQuery 之上的常见插件, 如: Bootstrap,Layer, 富文本编辑器等.
F: 综合应用上面的多种库写实际项目的模板, 多写几套.
3: 注意学习方法
我的学习方法总结如下:
A: 多买几本国外的 JS 书籍, 不要购买那种 20 天精通之类的书. 否则你是很难学通的, 更怕的是: 本来你买本好书自学 3 个月可能学会的, 它们硬是能折腾你两年...... 书籍推荐 (仅供参考)《JavaScript DOM 编程艺术》《JavaScript 权威指南》《JavaScript DOM 高级程序设计》《JavaScript 设计模式》《锋利的 jQuery》争取把书上的功能都自己练习多次, 不是一次. 书读百篇, 其义自见. 一定不要好高骛远不要放过哪怕很小的动手机会, 如做一个选项卡. 千万不要认为有了类似的甚至更好的插件就不需要自己写了, 知识是别人的, 不是你的, 你即使会用了也对你的技术技能水平没有任何提升. 你要多问自己, 如果要我来做, 我该怎么做?
注意事项
A: 充分利用一切手段很多人总感觉时间紧, 没有大块的时间学习. 我要说你不会学了, 你不应该只是抱怨, 而是要利用一切手段去学习, 要知道, 不一定只有看书才叫学习. 当你冷静的坐在某个地方, 思考了一下, 总结了一下, 你也都叫学习, 但凡有灵感, 就可以记录下来, 比如: 记录在手机上, 等方便了再记录在专门的地方. 这都叫学习. 可以在线学习现在是互联网时代要充分利用好它
B: 贵在坚持要沉的下心. 没有一蹴而就的成功, 否则那也不是成功, 只能叫 "侥幸". 不但要老老实实的把每个功能都试着去实现, 而且要精益求精的不断去修正, 这个过程是漫长的, 也是考验一个人是否是人才的标准.
C: 注意培养信心. 此时的你, 不适合一来就看很复杂很炫的网页效果的源代码, 也不适合一来就学 jQuery,angular,vue,Bootstrap 这些东西. 这些内容包含了很多深奥的知识在里面, 在没有任何基础的情况下直接学这些, 会严重打击你的自信心. 而此时你是弱小的, 你需要的是培养信心, 而不是反过来, 否则结局很可能是 "夭折", 离学有所成也就遥遥无期了
D: 多跟学的好的过来人学习站在巨人的肩上, 才能看的更远.
E: 不要浪费在工具的不停选择上 JS 的编辑工具很多, 如果无从下手, 建议使用: Sublime, 或者使用 Hbuilder; 很多公司里的技术人员都用这些, 你直接用这个也减少了和别人之间的沟通问题. 我也是用这个, 感觉很好.
对 Web 前端这门技术感兴趣的小伙伴可以加入到我们的学习圈来, 编程工作第六个年头了, 与大家分享一些学习方法, 实战开发需要注意的细节. 784-783-012 秋裙. 从零基础开始怎么样学好前端. 看看前辈们是如何在编程的世界里傲然前行! 不停更新最新的教程和学习方法 (Web 前端系统学习路线, 详细的前端项目实战教学视频, PDF), 有想学习 Web 前端的, 或是转行, 或是大学生, 还有工作中想提升自己能力的, 正在学习的小伙伴欢迎加入. 我们会一起结伴同行学习前端我们是认真的
来源: http://www.jianshu.com/p/14553b232e9b