码迷,mamicode.com
首页 > Web开发 > 详细

JS -- 函数

时间:2015-08-06 22:08:41      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

JS – 函数

JS – 函数

函数 数组 默认是按引用传递

var arr = [1, 2, 3];
function f(a) {
    a[0] = null;
}
f(arr);                         // null 2 3
for (var i = 0; i < 3; i++) {
    document.write(arr[i]);
}
var arr = [1, 2, 3];
function f(a) {
    a = null;
}
f(arr);                         // 1 2 3
for (var i = 0; i < 3; i++) {
    document.write(arr[i]);
}

函数 变量是值传递

var a = 3;
function f(b) {
    b = 4;
}
f(a);
document.write(a);          // 3

自动执行

(funtion () {
    var msg = "xxx";
    wnidow.onunload = function () {
            ...do something...
    }
})

arguments

this.f = function () {
    if (arguments.length == 1) {
        this.f1(arguments[0]);
    } else if (arguments.length == 2) {
        this.f1(arguments[0], arguments[1]);
    }
}
this.f1 = function (a) {
        ....
}
this.f2 = function (a, b) {
        ....
}
arguments.length;
arguments[0], arguments[1], arguments[2]
arguments.callee             # callee 不会像外层寻找, 自身就是个闭包
alert((function (n) {
    if (n <= 1) {
        return 1;
    } else {
        return n + arguments.callee(n-1);
    }
})(100));

实现重载

function power(base, exponent) {
    var result = 1;
    if (exponent == undefined) {
        exponent = 2;
    }
    for (var i = 1; i <= exponent; i++) {
        result *= base;
    }
    return result;
}

匿名函数

(function(a) {alert (a); })(‘abc‘)

JS -- 函数

标签:

原文地址:http://www.cnblogs.com/sunznx/p/4709069.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!