转载请标明出处!
 
 
 
 
          在火影的世界中存在忍术,忍术是把强大的能量集中在一起以各种各样不同的形式发射出来。怎样使用各种各样的忍术那?通过结印。
 
 
 
好,我们提取一些火影忍者中的关键信息。
 
1.火影忍者的故事背景有忍术存在,忍术什么样是由忍术先祖发明出来的。
 
2.忍术是同过结印触发的。结印几次就触发几次;(查克拉足够的情况下)
 
          通过这个背景我们想象一下,在JavaScript这个故事中,有一种类似忍术的东西,这种东西叫做函数,忍术先祖可以创造各种各样的忍术,同样我们也可以创造各种各样不同的函数,忍术需要结印才能触发,同样的函数需要调用才能触发。
 
 
 
函数
 
将代码编写在函数中,就可以避免在非必要情况下调用该代码,也就是说我们可以让一段代码在特定情况下再去执行。
 
function 关键字:该关键字表示要声明一个函数。
 
如何执行函数()
 
function m1(){
 
    //xxxxxxxxxxxxx
 
}
 
for(var i=0;i<10;i++){
    m1();
}
 
刚才提到,函数的意义就是在特定情况下运行函数,那么什么是特定的情况那?
 
JavaScript是事件驱动的语言!
 
事件:用户的行为。
 
onclick、ondblclick、onfocus、onblur
 
 
函数的参数
 
function m1(v1, v2, v3...){
    //xxxxxxxxxxxxx
}
 
 
return关键字
 
带返回值的函数
 
案例:
 
年月日分别为自定义函数的参数,判断是否为正确的日期
 
 
作业:
 
三个输入框分别输入,年、月、日, 判断,年月日是否正确。
 
 
参数可以传递多个,与函数的定义无关
 
function fn(e,b){
 
}
 
fn ("a","b","c");
 
案例:要实现一个加法运算,将所有传进来的数字累加。
 
作用域的问题
 
作用域的生命周期。
 
var a = 10;
 
function m1(){ 
    var a = 5;
    alert(a);
}
 
 
递归的用法
 
什么是递归?
 
自身调用自身!
 
function pr(){
 
    return pr()
 
}
 
关键点:
 
1.终止条件
 
2.运算规则
 
function pr(n){
      
     if(n==1){  // 终止条件
          return n;
     }
 
     return pr(n-1)+n;    
 
}
 
打印任意个hello world;
 
function pr(n){
 
    if(n==0){
        return
    }
 
    document.write('hello world!!<br>');
 
    return pr(n-1);
 
}
 
pr(10)
 
     
 
 
 
输出斐波那契额数列数列的前20项(递归)
 
 function fib(n){
 
            if(n==1||n==2){
 
                return 1
 
            }
 
            return fib(n-1)+fib(n-2)
 
        }
 
 for(var i = 1 ; i <= 20; i++){
 
            document.write(fib(i)+'<br>')
 
   }

javascript系列-class4.函数的更多相关文章

  1. JavaScript系列:函数 自执行 表达式 声明 定义

    可用方式 (function($) {})(jQuery); !function( $ ){}(jQuery); +function( $ ){}(jQuery); -function( $ ){}( ...

  2. 深入理解javascript系列(4):立即调用的函数表达式

    本文来自汤姆大叔 前言 大家学JavaScript的时候,经常遇到自执行匿名函数的代码,今天我们主要就来想想说一下自执行. 在详细了解这个之前,我们来谈了解一下“自执行”这个叫法,本文对这个功能的叫法 ...

  3. [JS]深入理解JavaScript系列(4):立即调用的函数表达式

    转自:汤姆大叔的博客 前言 大家学JavaScript的时候,经常遇到自执行匿名函数的代码,今天我们主要就来想想说一下自执行.在详细了解这个之前,我们来谈了解一下"自执行"这个叫法 ...

  4. JavaScript进阶系列04,函数参数个数不确定情况下的解决方案

    本篇主要体验函数参数个数不确定情况下的一个解决方案.先来看一段使用函数作为参数进行计算的实例. var calculate = function(x, y, fn) { return fn(x, y) ...

  5. JavaScript进阶系列02,函数作为参数以及在数组中的应用

    有时候,把函数作为参数可以让代码更简洁. var calculator = { calculate: function(x, y, fn) { return fn(x, y); } }; var su ...

  6. JavaScript进阶系列01,函数的声明,函数参数,函数闭包

    本篇主要体验JavaScript函数的声明.函数参数以及函数闭包. □ 函数的声明 ※ 声明全局函数 通常这样声明函数: function doSth() { alert("可以在任何时候调 ...

  7. 深入理解JavaScript系列(15):函数(Functions)

    介绍 本章节我们要着重介绍的是一个非常常见的ECMAScript对象——函数(function),我们将详细讲解一下各种类型的函数是如何影响上下文的变量对象以及每个函数的作用域链都包含什么,以及回答诸 ...

  8. 深入理解JavaScript系列(2):揭秘命名函数表达式

    前言 网上还没用发现有人对命名函数表达式进去重复深入的讨论,正因为如此,网上出现了各种各样的误解,本文将从原理和实践两个方面来探讨JavaScript关于命名函数表达式的优缺点. 简单的说,命名函数表 ...

  9. JavaScript系列之回调函数callback

    JavaScript系列之回调函数callback JavaScript回调函数的使用是很常见的,引用官方回调函数的定义: A callback is a function that is passe ...

随机推荐

  1. bzoj4032: [HEOI2015]最短不公共子串(SAM+DP)

    4032: [HEOI2015]最短不公共子串 题目:传送门 题解: 陈年老题良心%你赛膜爆嘎爷 当初做题...一眼SAM...结果只会两种直接DP的情况... 情况1: 直接设f[i][j] 表示的 ...

  2. Linux下将PHP添加到环境变量,将Mysql加入环境变量。

    1.修改/etc/profile vi /etc/profile 2.添加两行 PATH=$PATH:/usr/local/php7/bin:/usr/local/mysql/bin export P ...

  3. JDBC整理

    JDBC提供了独立于数据库的统一Api,用以执行SQL命令.JDBC API由以下常用的接口和类组成: DriverManagement:用于管理JDBC驱动的服务类,程序中使用该类的主要功能是获取C ...

  4. element-ui 实现table整列的拖动

    演示地址 1. 先动态渲染表头,给每一个表头添加一个class=virtual 的画虚线的类名,同时给每个表头加上鼠标点击.拖动.抬起事件:mousedown->mousemove->mo ...

  5. WPF向系统发送消息 并传递结构体

    场景 :需要开发一个通讯组件 流程为:界面-开启接收服务-通过发送组件发送信息到 其他客户端和服务端 接受服务接收其他客户端发送的消息 需要传递给对应组件或者界面 因此会出现类库重复引用问题.因为采用 ...

  6. 获得IP地址中文

    string ipFilePath = @"~/App_Data/QQWry.dat"; QQWryLocator QQWry = new QQWryLocator(Server. ...

  7. mysqldump流程

    前几天看到群里在讨论mysqldump导致锁表的问题,为什么一个表已经dump完了还会被锁住?mysqldump里面到底是怎么处理的,为了解答这些问题,就来看看mysqldump.cc中的实现吧. 目 ...

  8. 50个技巧提高你的PHP网站程序执行效率

    1.用单引号代替双引号来包含字符串,这样做会更快一些.因为PHP手册中说echo是语言结构,不是真正的函数,故 把函数加上了双引号). 2.如果能将类的方法定义成static,就尽量定义成static ...

  9. ubantu上搭建hive环境

    上次我们在ubantu上安装了hadoop,那我们现在再进一步,开始我们的学习之旅--hive板块吧! 第一步:准备! 软件: I.一个搭建好的hadoop环境 II.hive的bin文件(前往apa ...

  10. echarts的下载为excel小工具

    echarts自带有下载为图片的功能,但是没有下载为excel表格的功能,个人觉得下载为表格更为需要,所以写了个工具,此工具应用有局限性,只能用于柱形图和折线图,option的series要是如下形式 ...