zoukankan      html  css  js  c++  java
  • JS函数篇【2】

    什么是函数

    函数的作用,可以写一次代码,然后反复地重用这个代码。

    <h3 onload="add2(1,2,3);add3(4,5,6)"></h3>
    <hr/>
    <button style=" 100px;height: 50px;" value="" onclick="add(10,20)">什么是函数</button>
    <button style=" 100px;height: 50px;" value="" onclick="sub()">定义函数</button>
    <button style=" 100px;height: 50px;" value="" onclick="FUNC()">函数叠加功能调用</button>
    <hr/>
    <h3>有参函数调用:</h3>
    <button style=" 100px;height: 50px;" value="" onclick="add4(10,20)">返回值函数</button>
    <script type="text/javascript" src="../JS/jq/jquery-3.2.1.min.js"></script>
    <script type="text/javascript">

    function add(a1,a2) {
    var sum=a1+a2;
    alert(sum);
    }

    //调用函数

    //add(10,20);
    var sum=1;
    function sub(argument) {//调用函数
    sum+=1;
    alert(sum);
    }
    function FUNC(){//函数调用
    for (var i =0; i < 10; i++) {
    sub();
    }
    }

    //函数传参

    function add2(x,y,z){
    var sum = x + y +z;
    document.write(x+"、"+y+"、"+z+"和:"+sum+"<hr/>");

    }

    function add3(x,y,z){
    var sum = x + y +z;
    document.write(x+"、"+y+"、"+z+"和:"+sum+"<hr/>");
    }


    //返回值函数


    function add4(x,y){
    var result=x+y
    return result;
    }
    var value=add4(20,10);
    document.write("返回值:"+value);
    </script>

     1、JS函数定义

      含义:JS使用关键字function定义函数,函数可以同过声明定义,也可以是一个表达式。

    一:函数声明

    function save(){//函数体}

    二:函数表达式

    var x = function (a, b) {return a * b};

    三:functiion构造函数

    var myFunction = new Function("a", "b", "return a * b"); 
    var x = myFunction(4, 3);

    注意:在 JavaScript 中,很多时候,你需要避免使用 new 关键字

    四:函数提升:

    提升:是JS默认将当前作用域提升到前面去的行为。提升应用在变量的声明与函数的声明,因此,函数可以在申明之前调用。

    myFunction(5);
    function myFunction(y) {
        return y * y;
    }

    注意:使用表达式定义函数时无法提升

    五:自调用函数:函数实际上是一个 匿名自我调用的函数 (没有函数名)。

    (function () { 
        var x = "Hello!!";      // 我将调用自己 
    })();

    六:函数可作为一个值使用也可以作为表达式使用

    function myFunction(a, b) { 
        return a * b; 

    var x = myFunction(4, 3);

    七:函数是对象

    实列:

    function myFunction(a, b) { 
        return arguments.length; 
    }

    toString()将函数作为一个字符串返回

    2、JS函数参数

    一:JavaScript 函数参数:

      1、显式参数:函数显式参数在函数定义时列出。

    functionName(parameter1, parameter2, parameter3) {
        code to be executed
    }

      2、隐藏参数:函数隐藏参数(arguments)在函数调用时传递给函数真正的值。

      3、默认参数:如果函数在调用时缺少参数,参数会默认设置为: undefined

    function myFunction(x, y) {
        if (y === undefined) {
              y = 0;
        } 
    }

      4、Arguments 对象:JavaScript 函数有个内置的对象 arguments 对象.

       argument 对象包含了函数调用的参数数组。

    实例

    找出最大的值

    x = findMax(1, 123, 500, 115, 44, 88);

    function findMax() {

        var i, max = arguments[0];

        if(arguments.length < 2)return max;

        for (i = 0; i < arguments.length; i++) {

            if (arguments[i] > max) {

                max = arguments[i];

            }

        }

        return max;

    }

      统计所有数值的和:

    x = sumAll(1, 123, 500, 115, 44, 88);
    function sumAll() {
        var i, sum = 0;
        for (i = 0; i < arguments.length; i++) {
            sum += arguments[i];
        }
        return sum;
    }

      5、通过值传递参数:在函数中调用的参数是函数的参数。如果函数修改参数的值,将不会修改参数的初始值(在函数外定义)。

    实例

    var x = 1;
    // 通过值传递参数
    function myFunction(x) {
        x++; //修改参数x的值,将不会修改在函数外定义的变量 x
        console.log(x);
    }
    myFunction(x); // 2
    console.log(x); // 1
      6、
    通过对象传递参数:在JavaScript中,可以引用对象的值。因此我们在函数内部修改对象的属性就会修改其初始的值。修改对象属性可作用于函数外部(全局变量)。

    实例

    var obj = {x:1};
    // 通过对象传递参数
    function myFunction(obj) {
        obj.x++; //修改参数对象obj.x的值,函数外定义的obj也将会被修改
        console.log(obj.x);
    }
    myFunction(obj); // 2
    console.log(obj.x); // 2


    3、JS函数调用
      
    学着把生活的苦酒当成饮料一样慢慢品尝, 不论生命经过多少委屈和艰辛, 我们总是以一个朝气蓬勃的面孔, 醒来在每一个早上。
  • 相关阅读:
    SourceTree Win10 安装过程及配置
    Laravel 5.5 官方推荐 Nginx 配置学习
    Laravel 获取当前 Guard 分析 —源自电商购物车的实际需求
    Laravel Query Builder 复杂查询案例:子查询实现分区查询 partition by
    Laravel Scheduling Package
    Homestead 中使用 laravel-mix 问题汇总
    iBrand 教程:Git 软件安装过程截图
    使用 Satis 搭建私有的 Composer 包仓库
    Windows + Homestead 5 搭建 Laravel 开发环境
    Homestead 安装 phpMyAdmin 作为数据库管理客户端 — Laravel 实战 iBrand API 教程
  • 原文地址:https://www.cnblogs.com/yhm9/p/11161788.html
Copyright © 2011-2022 走看看