程序语言的抽象
2016-06-17 16:37
429 查看
函数
阅读: 23779我们知道圆的面积计算公式为:
S = πr2
当我们知道半径
r的值时,就可以根据公式计算出面积。假设我们需要计算3个不同大小的圆的面积:
var r1 = 12.34; var r2 = 9.08; var r3 = 73.1; var s1 = 3.14 * r1 * r1; var s2 = 3.14 * r2 * r2; var s3 = 3.14 * r3 * r3;
当代码出现有规律的重复的时候,你就需要当心了,每次写
3.14 * x * x不仅很麻烦,而且,如果要把
3.14改成
3.14159265359的时候,得全部替换。
有了函数,我们就不再每次写
s = 3.14 * x * x,而是写成更有意义的函数调用
s = area_of_circle(x),而函数
area_of_circle本身只需要写一次,就可以多次调用。
基本上所有的高级语言都支持函数,JavaScript也不例外。JavaScript的函数不但是“头等公民”,而且可以像变量一样使用,具有非常强大的抽象能力。
抽象
抽象是数学中非常常见的概念。举个例子:计算数列的和,比如:
1 + 2 + 3 + ... + 100,写起来十分不方便,于是数学家发明了求和符号∑,可以把
1 + 2 + 3 + ... + 100记作:
100
∑n
n=1
这种抽象记法非常强大,因为我们看到 ∑ 就可以理解成求和,而不是还原成低级的加法运算。
而且,这种抽象记法是可扩展的,比如:
100
∑(n2+1)
n=1
还原成加法运算就变成了:
(1 x 1 + 1) + (2 x 2 + 1) + (3 x 3 + 1) + ... + (100 x 100 + 1)
可见,借助抽象,我们才能不关心底层的具体计算过程,而直接在更高的层次上思考问题。
写计算机程序也是一样,函数就是最基本的一种代码抽象的方式。
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- Android学习笔记(二九):嵌入浏览器
- Android java 与 javascript互访(相互调用)的方法例子
- JavaScript演示排序算法
- javascript实现10进制转为N进制数
- 最后一次说说闭包
- Ajax
- 2019年开发人员应该学习的8个JavaScript框架
- HTML中的script标签研究
- 对一个分号引发的错误研究
- 异步流程控制:7 行代码学会 co 模块
- ES6 走马观花(ECMAScript2015 新特性)
- JavaScript拆分字符串时产生空字符的原因
- Canvas 在高清屏下绘制图片变模糊的解决方法
- Redux系列02:一个炒鸡简单的react+redux例子
- JavaScript 各种遍历方式详解
- call/apply/bind 的理解与实例分享