转载请标明出处!
 
 
 
 
          在火影的世界中存在忍术,忍术是把强大的能量集中在一起以各种各样不同的形式发射出来。怎样使用各种各样的忍术那?通过结印。
 
 
 
好,我们提取一些火影忍者中的关键信息。
 
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. SPFA(Shortest Path Faster Algorithm)

    特别说明 本文转载自三金(frinemore)的博客: 点这 前言 1.关于SPFA,它没死. 2.接下来的所有代码,都是自己手写的(未检查正确性,补充的代码有检查过,是对的),有错误请帮忙指出. S ...

  2. 浅谈javascript的面向对象思想

    面向对象的三大基本特性 封装(把相关的信息(无论数据或方法)存储在对象中的能力) 继承(由另一个类(或多个类)得来类的属性和方法的能力) 多态(一个对象在不同情况下的多种形态) 定义类或对象 第一种: ...

  3. ffmpeg常用指令

    在osx系统下通过ffmpeg查看设备 ffmpeg -f avfoundation -list_devices true -i "" -f 指定的是输入输出格式, -i指定输入的 ...

  4. addFooterView(v)与 addHeaderView(v)之后 头或者尾部没有加上去

    myExpandableListView.addHeaderView(headView); myExpandableListView.addFooterView(footerView); 原因很简单: ...

  5. where条件顺序与建索引顺序

    查询时,如果数据量很大,where 后面的条件与建索引的顺序相同,也没有什么多少差别,聚集索引稍微快点; 但where 后面的条件与建索引顺序不同,速度会慢下来,到底慢多少,不同的机器会不一样,没有绝 ...

  6. vue中slot的用法案例

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. 别让好想法埋没:如何进行APP开发?

    经常和许多创业者讨论,发现很多人想法都不错,但是都不知道该如何实现,今天就如何引导大家走出第一步写一篇文章,很多人通常误会一件事情,认为程序员开发可以一步步把自己的想法拼接出来,我有一个功能点,就让程 ...

  8. 如何在使用layer.prompt在输入值为空的情况下点击确定继续执行逻辑?

    突然发现在使用LayUI时,用到弹出层layer.prompt时,如果文本框输入值是空的话点击确定没有反应,不能向下执行. 但是我又需要在这种情况下去继续执行判断或逻辑时该怎么做?? 示例:原代码如下 ...

  9. CF993C Careful Maneuvering bitset_枚举

    Code: #include<cstdio> #include<map> #include<iostream> #include<cmath> #inc ...

  10. Pyhton学习——Day23

    #re模块方法:findall search#findall:返回所有满足匹配条件的数值,放在列表里#search : #函数会在字符串内查找模式匹配,只到找到第一个匹配然后返回一个包含匹配信息的对象 ...