学会JS只是知道了“是什么”,并不意味着你会用JS做什么
假设有这样一个需求,“在一堆人里,选出5个人,每个人给一个包子”。这个需求如果用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为目标,这还远远不够。
- python 利用random生成验证码与MD5码加密过程
- Java内部类的继承
- Java继承类中static成员函数的重写
- Search for a range寻找上下界-Leetcode
- Basic Calculator 基本计算器-Leetcode
- python yield函数深入浅出理解
- 十分钟搞定 Tensorflow 服务
- datapump跨平台升级迁移的总结 (r8笔记第77天)
- Java中isAssignableFrom()方法与instanceof()方法用法
- 与Ajax同样重要的jQuery(1)
- Java中Class类详解、用法及泛化
- python 函数编程的位置参数、默认参数、关键字参数以及函数的递归
- Java子类的父类和要实现的接口有相同的方法/函数会冲突吗
- Java关键字 Finally执行与break, continue, return等关键字的关系
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 一天一大 lee(回文对)难度:困难-Day20200806
- 一天一大 lee(扫雷游戏)难度:中等-Day20200820
- 一天一大 lee(重新安排行程)难度:中等-Day20200827
- 一天一大 lee(机器人能否返回原点)难度:简单-Day20200828
- 一天一大 lee(有序链表转换二叉搜索树)难度:中等-Day20200818
- 一天一大 lee(钥匙和房间)难度:中等-Day20200831
- 一天一大 lee(最短回文串)难度:困难-Day20200829
- 一天一大 lee(预测赢家)难度:中等-Day20200901
- 一天一大 lee(反转字符串中的单词 III)难度:简单-Day20200830
- 一天一大 lee(平衡二叉树)难度:简单-Day20200817
- 一天一大 lee(组合总和)难度:中等-Day20200909
- 一天一大 lee(回文子串)难度:中等-Day20200819
- 一天一大 lee(组合)难度:中等-Day20200908
- es6学习笔记
- 一天一大 lee(图像渲染)难度:简单-Day20200816