6 个快速学会 JavaScript 的秘诀!
我们在学习JavaScript,或其他任何编码技能的时候,往往是因为这些拦路虎而裹足不前:
有些概念可能会造成混淆,尤其当你是从其他语言转过来的时候。
找不到时间(有时是动力)学习。
很容易忘记已经理解了的东西。
工具多又在不断变化,所以不知道从哪里开始。
幸运的是,这些拦路虎是可以被识别,并消灭的。我将介绍六个思维技巧来帮助你更快地学习JavaScript,并成为一个更快乐、更富有成效的程序员。
不要让未来的决策阻止你现在前进的方向
很多人学习JavaScript,问的第一个问题往往是“我应该使用哪个框架?”。但是,如果你还没有掌握最最基础的JavaScript,那这显然是一个错误的问题。你将你所有的时间用来研究不同的框架,于是,你开始停滞不前。
帮助摆脱这种陷阱的方法之一是画一个你需要学习的路线图。例如,要想成为一个前端开发者,你的路线图可能是这样的:
进一步分解的话,你可以做一个只有HTML和CSS的功能性web页面。然后像这样一步步列出每个步骤,那么对于现在应该专注于做什么,就一目了然了。你也不会浪费时间去担心应该以后操心的事情。
不要让自信诱骗你忘事
快速了解一个概念,也许是学习JavaScript的道路上最影响你进步的事情之一。下面请允许我解释一下。
当你读到某些东西,你觉得的确如此的,那么很可能就会直接跳到下一个内容。然后你觉得接下来这个内容也非常浅显易懂,于是继续往下看。但很快,你会发现你已经忘记了前面自认为已经掌握的内容,所以只能回过头去温习。你快速地浏览了一遍,感觉又明白了,然后继续前进。但是你又发现自己忘记了别的东西。你一直处在这个循环中,直到最终迷失了自己。你不由地气馁,想着那先休息一下吧,然而当你休息完了再回来的时候,你发现你已经忘记了所有的内容。
我目前是在职前端开发,如果你现在也想学习前端开发技术,在入门学习前端的过程当中有遇见任何关于学习方法,学习路线,学习效率等方面的问题,你都可以申请加入我的前端学习交流裙:前面:六零三 中间:九八五 最后:九九三。里面聚集了一些正在自学前端的初学者,裙文件里面也有我做前端技术这段时间整理的一些前端学习手册,前端面试题,前端开发工具,PDF文档书籍教程,需要的话都可以自行来获取下载。
解决这个问题,也很简单,只需要两步:
限制一次学习的量。
实践——实际编写代码。
当你去学习一个新概念的时候,一定要试用它,摆弄它,熟悉它,甚至将它和其他概念结合起来。而且实际输出到示例代码中非常重要,因为这能帮助你消化吸收它。此外,限制一次学习的量,有助于记住资料,道理也很简单,东西越少越好记。
虽然这种学习进程会让你感觉所需的时间更多,但实际上恰恰相反,因为你不再需要走那么多的回头路。我也是经过了很多次惨不忍睹的教训才明白了这个技巧。
用正确的心态去做练习
很多人认为反复的练习特别无聊,所以他们通常会选择跳过或尝试走捷径。如果你快进JavaScript练习,那么最终反而需要更多的学习时间。试着让练习变得令人感兴趣,这样是不是就不会那么抗拒呢?
试着转变心态:
如果让你学习一个新的JavaScript概念,却不能试试,会怎么样?你是什么感觉?从我个人而言,我会特别懊恼。这就像一个孩子得到一个新的玩具,却不能玩一样。
当你学习JavaScript中一些新内容的时候,试着将它当作新玩具,新车,新鞋,或者其他任何你有兴趣尝试的东西。然后不要将练习当作工作,要将练习当作是玩耍。用新技能去尝试一些很酷的东西。让你自己都不由的惊叹。然后显摆给你的朋友看。
用一种游戏的心态,你会学得更快,记得更久,拥有更多的乐趣。
04
写代码的时间魔法
在学习JavaScript中最常见的问题是,找不到时间写代码。但是,与此同时,却有大把大把的时间浏览各种网站,如Facebook,YouTube,维基百科和Reddit等。
我有好几次,一开始只是想打开Facebook,看一小会,然后不知不觉就发现已经看了几个小时。这是怎么发生的呢?或许正是因为我并不打算看很长时间。万事开头难,一旦开了头,后面陷进去就变得容易多了。但是如果有人问我,是否愿意花时间在Facebook上,我会坚决地说不,因为我本身时间就不够用。然而,只允许看一会会时间往往更容易接受,然后深陷其中。
好消息是,你也可以利用同样的心理来学习写代码。一开始不要想着要编码几小时,因为你永远找不到这么多的时间。就告诉自己你要去写3分钟的代码。这样你永远也不用愁挤不出时间了。
05
思考得更慢,学得更快
这听起来貌似有悖常理,下面我会用一个小故事解释。
我的一个朋友曾经对JavaScript的某个功能感到困惑。于是,我让他详细地说一遍哪些是他知道的,然后给他解释他感到困惑的那部分。不过,当他检查代码片段的时候,我注意到有一段代码,他说得非常仓促。
“等一下!”我说, “慢点讲,每一步都详细地说一下。”
我的朋友继续给我做代码发生了什么的全面总结。
我只好再次叫住他。“你还是太仓促了。再试一次,但这次,我希望你能从字面上去检查每一行代码,告诉每一行的代码都发生了什么。”
这次,我的朋友终于能够很好地解释代码中正在发生什么。问题的关键是,他终于可以一步一步地检查了代码片段,而不是囫囵吞枣想要一次性理解所有代码。
在类似于这样的情况下,思考得更慢实际上能让你学得更快。
06
首先用简明的语言来写复杂的代码
如果碰到一段复杂的或你不熟悉的代码,那么先用通俗易懂的语言写出来。这样一来,你就可以在写代码之前明确地知道你想要代码做什么。这么做有两个好处:
代码更易写,因为你不需要总是停下来想,你想要它表现什么。
在bug发生之前就能捕捉到,因为你对代码应该做什么有一个明确的概念。
结论:
我们已经讨论了一堆如何更快地学习JavaScript的方法,而且你也可以将这些技巧应用到其他的技能上。下面来回顾一下:
不要担心以后会做什么决策,先好好深入学习。
将新技能当作玩具一般快乐地练习。
以小承诺的方式找时间来写代码,就像你一开始安慰自己只逛一小会时间网站。
慢下来,步子迈的越小,学得越快。
6 个快速学会 JavaScript 的秘诀!相关推荐
- 零基础自学python教程-零基础5个月快速学会Python的秘诀
点击蓝字"python教程"关注我们哟! 零基础该怎么快速学习Python呢?如何用5个月快速学会Python? 1 这里主要讲一下python基础与爬虫 个人认为可以分为两步走: ...
- 前端小白也能快速学会的博客园博客美化全攻略
前端小白也能快速学会的博客园博客美化全攻略 A呦V,博客园er的自我修养是什么?第一条,别只顾收藏和偷师呀,记得点"推荐"或关注本人喔~ 美化方法论简介 一般而言,需要选一个默认的 ...
- 前端小白也能快速学会的博客园博客美化全攻略[附源码]
前端小白也能快速学会的博客园博客美化全攻略[附源码] 文章目录 前端小白也能快速学会的博客园博客美化全攻略[附源码] 美化方法论简介 准备工作 js权限申请 如何模仿一个博客园的自定义风格(样式css ...
- 教你如何快速学会全彩LED显示屏的调试方法
今天优色专显教你如何快速学会全彩LED显示屏的调试方法.全彩LED显示屏的调试分为3步:调试之前的准备工作;调试单个接收卡所控制的LED电子屏区域(一般为一个箱体);调试大屏幕. 一. 调试之前的准备 ...
- 轻松学会JavaScript事件
文章目录 事件与事件流 事件监听(绑定事件方法) JavaScript事件 鼠标事件 表单事件 键盘事件 UI事件 快速投票 事件可以说是JavaScript最引人注目的特性,因为它提供了一个平台 ...
- UI设计培训之:5个小技巧快速学会PS抠图
一听到PS抠图,我们大家心里是不是产生了退却心理,害怕它过于复杂的操作. 那么现在有一种简单方法教给大家,如何在10分钟内快速学会ps抠图. 而你所需要准备的就是给自己10分钟的尝试时间. 你没有尝试 ...
- 深入体验JavaWeb开发内幕——简述JSP中的自定义标签叫你快速学会
转载自 深入体验JavaWeb开发内幕--简述JSP中的自定义标签叫你快速学会 自定义标签,顾名思义,就是自己定义的标签.那么我们为什么要自己定义一些标签呢? 我们知道,如果要在JSP中获取数据我 ...
- 新手编程:程序员 5 种编程入门方法,快速学会一门编程语言!
程序员要精通一门语言,还是要掌握多门语言? 对于这个问题,公说公有理,婆说婆有理. 技术更新太快,精通一门编程语言已经实属不易,又怎么好意思说精通多门语言呢? 不过呢,当你精通一门语言同时,涉猎一下其 ...
- Android 工程师如何快速学会web前段
Android 工程师如何快速学会web前段 今天主要聊一下本人最近在学习web前段的感受,最近html5是越来越火了,前段时间公司做了一个项目然后让我们"android"的程序猿 ...
最新文章
- 【Tools】git提示“warning: LF will be replaced by CRLF”的解决办法
- C#三层架构第五课之DBUtil层设计
- 浅谈shell中的clear命令实现
- java集合框架中contains(),containsKey()和containsValue()的用法
- Android Studio 创建第一个Android工程项目
- android zxing 自动对焦,ZXing自动对焦问题
- qt中关于坐标的说明
- spring boot 教程(四) 统一异常处理
- Swift Alamofire SwiftyJson
- MAX30102 模拟IIC读取程序(C语言)
- Netapp存储 硬盘显示bad label的解决办法
- 《动手学ROS2进阶篇》8.2RVIZ2可视化移动机器人模型
- 将支付网关添加到您的WooCommerce商店
- 广西国家级自然保护区功能区划图(展示)
- 《2022 中小企业快成长之年,上云 选对平台是关键,这次我站华为云》
- 如何购买服务器及域名(阿里)
- 拉屎的自由,你有吗?
- 二叉树的中序遍历 递归与非递归
- JQ对复选框全选、获取复选框的值、回选
- 条形码技术在供应链管理中的作用
热门文章
- linux系统下安装ns,Ubuntu 14.04下安装ns2.35
- linux文件系统管理实践题目,Linux软件管理、文件系统管理实践
- 输入法 java_使用 Utf7ime 输入法实现中文输入 Windows+Java 平台(完整步骤版)
- Ajax Control Toolkit--Slider:有朝一日倒过来
- centos6.5 安装mysql5.6多实例(多配置文件)
- Sublime text 3 SVN插件及使用方法
- openstack部署(四)--网络配置(Networking)
- Oracle —— 如何执行SQL文件
- 珍藏40个android应用源码分享
- java开发_读写txt文件操作