前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >学会JS只是知道了“是什么”,并不意味着你会用JS做什么

学会JS只是知道了“是什么”,并不意味着你会用JS做什么

作者头像
web前端教室
发布2018-02-07 11:38:22
6120
发布2018-02-07 11:38:22
举报
文章被收录于专栏:web前端教室web前端教室

假设有这样一个需求,“在一堆人里,选出5个人,每个人给一个包子”。这个需求如果用js来描述,该怎么做呢?

如果用中文来描述,应该是类似这样的一个东西:

代码语言:js
复制
function 人(){
 let 给包子=[];
 人s.filter((人i)=>{
 if( 给包子.length<5 ){
 给包子.push( 人i )
 }
 });
 给包子.forEach((i)=>{i.吃包子});
}

一段中文的伪代码,为了表明大概的意思,不必细究哈。

上面那段中英夹杂的伪代码,其实没什么用处,只是把原来的需求,用js重新说了一遍而已。

但是从中可以看出,我几乎是告诉了电脑一步一步的该怎么用,这一步做什么,下一步做什么。电脑并不能自己分析什么方法,它只是。。计算的速度很快而已。

这个思路放在无论多么复杂的程序上,不管是js还是java,不管是面对过程,还是面向对象。都是可以使用的,“就是把人写的需求,用程序翻译成机器可以理解的步骤”。

至于怎么翻译,怎么能让电脑明白,这就是程序员的工作了。换句话说,你学会了JS,也只不过是学会了JS这门语言该怎么用而已,但是如何用JS来翻译人类的需求?这是在JS之外的内容。

例如,有个这样的需求,“每天在规定的时间段之内,到app中签到,连续15天,给你一个xx奖品”。

面对这样的需求,首先你得记录用户什么时候来签到的,然后对每个用户签到的时间进行排序,然后你还要判断他的签到记录是否连续?最后再判断有没有连续达到15天?

这一步一步的判断与操作,都是需要程序员来实现,电脑不会帮你想任何一个办法、步骤。不管你是前端还是后端,不管你用什么语言,都可以看出,这其中没有太多的数学知识,你只是把事情一步一步的想清楚,然后找一个对象来保存数据,再想一个适合的方法来计算结果。

程序员最起码要做到这一步,“把事情想清楚,把数算清楚”。

对于零基础的人来讲,学会js并不是很困难的事情。但是理解业务和想明白需求,这却是一个长期的过程。现在的前端业务越来越复杂,一个需求会和其它多个需求交织在一起,像说话一样直接撸代码已经不可取,所以会有封装、模块等等。

所以说到最后,同学们如果想要从事前端开发的工作,千万不要只以学会JS为目标,这还远远不够。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-08-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 web前端教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档