【笔记】 《js权威指南》- 第8章 函数 - 8.2 - 8.3 函数调用 实参 形参

1.函数调用的4种途径:

(1). 函数调用:最普通的调用

(2). 方法调用:保存在对象中的函数:

当方法不需要返回值时最好返回this,方便链式调用。

方法中的this指向这个方法所在的对象,在方法中嵌套的函数中的this指向全局对象或者undefined。

var o = {
    m: function() {
        var self = this;
        //true
        console.log(this === o);
        f();
        function f() {
            //false
            console.log(this === o);
        }
    }
};

(3).作为构造函数:

在调用函数之前使用关键字new。

(4).通过call apply调用。


2.实参和形参:

(1).可选形参模板:

function f(a, /*  optional */ b) {
    b = b || [];
}
(2).可变长的实参列表:实参对象

arguments对象类似数组,保存参数列表,以及参数长度;

arguments.caller(非标准):指代调用当前函数的函数,可以用来显示调用栈;

arguments.callee:指代当前调用函数,可以用来递归调用匿名函数;

var factorial = function(x) {
    if (x <= 1) return 1;
    return x * arquments.callee(x - 1);
}

(3).当一个方法可以接受任意数量的实参,可以这样声明:

function max(/* ... */)

你可能感兴趣的:(方法,参数,this,构造函数,callee)