JS函数的概念

来源:互联网 发布:js算法题 编辑:程序博客网 时间:2024/05/16 10:15

函数的概念

为什么需要使用函数?

首先看一下输出100所有素数问题的解决方案

 

 

方案一:循环的嵌套

<script>    for (var n=2; n<=100; n++) {        var m = Math.ceil(Math.sqrt(n));//根据相关数学定理,查找范围可缩小至[2,sqrt(n)]        var found = false;//找到因子的标记        for (var i = 2; i <= m; i++) {            if (n % i == 0) {                found = true;                break;//找到则提前结束            }        }        if (!found) {            document.write(n + "是素数<br>");        }    }</script>

这种解决方案程序比较复杂,阅读也比较困难,需要比较高超的技术。


方案二:

应用函数

<script>    /*    * 假设系统已经提供了一个判断素数的函数isPrime(x),那么问题是不是就特别简单    * */    for(var n=2;n<=100;n++){        if(isPrime(n)){            document.write(n+"<br>");        }    }    function isPrime(n){        var m = Math.ceil(Math.sqrt(n));        var found = false;        for(var i=2;i<=m;i++){            if(n%i==0){                return false;            }        }        return true;    }</script>




这种解决方案是将一个比较复杂的问题分解为两个较为简单的问题去解决,是用“量”去克服“难”和“大”的问题。也就是“大事化小”;

       这种解决方案给我们提供了一个解决规模大、难度高的问题的解决思路,它分解为多个模式相对较小、难度相对较低的问题,如果分解后的问题仍然规模大或者难度高,可以按照这个思路一直分解下去,直到分解后的问题足够小、简单。归纳起来就是“大事化小”;



函数的本质:


       直观理解就是实现某个独立功能的代码段或者说它就是一个数据加工的黑箱子。





原创粉丝点击