zoukankan      html  css  js  c++  java
  • 函数

    初识函数

    函数可以复用代码,代码可以是多行,可以在任何地方、任何时候调用或执行。

    定义函数:

    1 function 函数名(){
    2      //要执行的代码
    3 }

    调用函数:

    1 函数名();

    函数的定义只是告诉计算机有这个函数,但是如果没有调用它的话,那么它就跟不存在一样,不会有任何的效果。相反如果没有定义而直接调用的话,那么就会报错。函数的定义和调用是缺一不可的。

    匿名函数

    匿名函数就是没有名字的函数。

    1 function(){}

    不能直接定义一个匿名函数,不然会报错 。

    1 function(){
    2     console.log(1); //报错
    3 }

    当匿名函数被事件调用,并且以赋值的形式出现,它才能执行。

    1 window.onload=function(){
    2      console.log(1);//1
    3 }

    函数的两种表达方式

    函数表达式:

    函数表达式可以简单理解为像声明变量那样来声明一个函数。

    定义函数表达式:

    1 var 变量名=function(){};

    调用函数表达式:

    1、第一种调用方式

    1 变量名();

    2、第二种调用方式

    1 var 变量名=function(){
    2     alert(1); //1
    3 }();//在末尾加一对小括号代表直接调用

    函数表达式在定义的时候,如果function后面有名字的话(这个名字没有什么意义,可以当作不存在),是不能拿这个名字去调用函数的,否则会报错。

    函数声明:

    函数声明就是命名函数,通俗一点就是有名字的函数。

    定义函数声明:

    1 function 函数名(){
    2      //要执行的代码
    3 }

    调用函数声明:

    1 函数名();

    其他调用方式:

    1 (function 函数名(){})();
    2 !(function 函数名(){})();
    3 ~(function 函数名(){})();
    4 +(function 函数名(){})();
    5 -(function 函数名(){})();

    函数参数

    从函数外面,向函数里面传递的数据,传递的数据可以在函数内部使用,这个数据就叫参数 。

    1 function fn(a){
    2     console.log(a); //10
    3 }
    4 fn(10);//10就是要往函数里传递的数据

    函数的参数分为形参和实参。形参是声明函数时候的参数,它只能在函数内部去使用。实参是在函数调用的时候实际传入的参数。可以把形参当作是一个变量,它的值取决于实参(调用函数时的参数),实参传的是什么,形参就是什么。

    1            形参
    2 3 function fn(a){
    4     console.log(a); //10
    5 }
    6 fn(10);
    7 8    实参

    函数的参数可以是多个,中间用逗号隔开。实参必需与形参一一对应,如果定义函数的时候有形参,但是在调用函数的时候,没有给对应的实参。那么那个形参就为undefined。

    1 function fn(a,b,c){
    2     console.log(a);//1
    3     console.log(b);//2
    4     console.log(c);//undefined,因为c没有对应的实参
    5 }
    6 fn(1,2);

    arguments

    arguments代表了所有参数(实参)的集合,它与形参没有关系,它是类数组(类数组:拥有数组的某些特性,如:length、可以通过下标获取某个元素,类数组不能使用数组的方法)。

    1 function fn(){
    2     console.log(arguments);//[1,2,3,4,5],所有实参的集合
    3 }
    4 fn(1,2,3,4,5);

    arguments只能在函数内部使用,它有一个length属性,代表传进去参数的个数。

    1 function fn1(){
    2     console.log(arguments.length);//3
    3 }
    4 fn1(1,'a',30);

    函数返回值

    每个函数调用后,都会有返回值,如果在函数内部使用了return,那这个函数返回的结果就是return后面的值。如果函数内部没有使用return,那这个函数的返回值就是undefined。

    使用return:

    1 function fn(){
    2     return 1+1;//return会返回计算后的结果
    3 }
    4 console.log(fn());//2

    不使用return:

    1 function fn(){
    2     1+1;
    3 }
    4 console.log(fn());//undefined

    return只能用在函数里,它能够阻止函数继续运行,return后面的代码是不会运行的。

    1 function fn(){
    2     var a=5;
    3     if(a==5){
    4         return;//代码走到这以后就停止了,以下的代码都不会被执行
    5     }
    6     console.log(1);//没有反应
    7 }
    8 fn();
  • 相关阅读:
    [悟]你为什么想创业
    [悟] 因上努力,果上随缘
    自己写个多任务多线程断点下载框架
    大道甚夷,而人好径
    [经验帖]外包如何定价
    python 基础语法
    python 中文编码问题
    python的运行机制和版本区别
    [转]linux 调用动态库so文件
    shell join详解
  • 原文地址:https://www.cnblogs.com/imguo/p/5759439.html
Copyright © 2011-2022 走看看