(9) 函数

2019-04-29  本文已影响0人  汨逸

函数

1. 定义

  1. 普通函数
function fun (arg1, arg2, arg3...) {
    statements
}

fun();  // 调用
  1. 函数表达式
var fun = function (arg1, arg2, arg3....) {
    statements;
}

fun();  // 调用
  1. Function关键字
var fun = new Function('arg1', 'arg2', 'statements');
fun();  // 调用
  1. 箭头函数(ES6)
var fun = (arg1, arg2, arg3) => {
    statements;
}

fun();  // 调用

2. 函数特性

  1. 模拟函数重载

    function doAdd () {
        if (arguments.length === 1) {
            alert(arguments[0] + 10);
        } else if (arguments.length === 2) {
            alert(arguments[0] + arguments[1]);
        }
    }
    doAdd(10);
    doAdd(10, 20);
    
  2. 值永远与对应命名参数的值保持同步

    function doAdd (num1, num2) {
        arguments[1] = 10;
        alert(arguments[0] + num2);
    }
    
    1. 此处修改了arguments[1]的值,那么num2的值也被修改为10
    2. 但是arguments[1]和num2也是两块相同的内存空间(相互独立,值会同步)
    3. 但是如果传递了一个值,arguments[1]就没有作用了
    

未完待续(this关键字改变,闭包)。。。

上一篇 下一篇

猜你喜欢

热点阅读