js函数

js函数


定义函数

js函数的两种定义方法:

function abs(x) {
    if (x >= 0) {
        return x;
    } else {
        return -x;
    }
}

这种方法定义的函数是一个匿名函数

var abs = function (x) {
    if (x >= 0) {
        return x;
    } else {
        return -x;
    }
};

调用函数

通过变量abs就可以调用该函数

注意:注意第二种方式按照完整语法需要在函数体末尾加一个 ;

JavaScript允许传入任意个参数而不影响调用

abs(10, 'blablabla'); // 返回10
abs(-9, 'haha', 'hehe', null); // 返回9
abs(); // 返回NaN

argument

arguments,它只在函数内部起作用,并且永远指向当前函数的调用者传入的所有参数。arguments类似Array但它不是一个Array

要把中间的参数b变为“可选”参数,就只能通过arguments判断,然后重新调整参数并赋值。

// foo(a[, b], c)
// 接收2~3个参数,b是可选参数,如果只传2个参数,b默认为null:
function foo(a, b, c) {
    if (arguments.length === 2) {
        // 实际拿到的参数是a和b,c为undefined
        c = b; // 把b赋给c
        b = null; // b变为默认值
    }
    // ...
}

rest参数

function foo(a, b, ...rest) {
    console.log('a = ' + a);
    console.log('b = ' + b);
    console.log(rest);
}

foo(1, 2, 3, 4, 5);
// 结果:
// a = 1
// b = 2
// Array [ 3, 4, 5 ]

foo(1);
// 结果:
// a = 1
// b = undefined
// Array []
  • [ ] 用rest参数编写一个sum()函数,接收任意个参数并返回它们的和:
function sum(...rest) {
   var result = 0;
   rest.forEach(function (v) {
        result += v;
   })
   return result;
}
阅读更多
个人分类: html js
上一篇数组
下一篇变量作用域与解构赋值
想对作者说点什么? 我来说一句

JS函数集合大全/JS函数

2008年11月13日 8KB 下载

js函数js判断输入是否中文

2009年09月04日 70KB 下载

JS函数大全

2012年04月16日 85KB 下载

js函数大全

2011年08月31日 67KB 下载

常用js函数

2013年01月15日 52KB 下载

十进制转十六进制js函数

2013年07月23日 2KB 下载

flash与JS函数.txt

2013年06月06日 6KB 下载

弹性动画JS

2013年07月19日 791B 下载

js常用函数大全

2016年04月06日 642KB 下载

没有更多推荐了,返回首页

关闭
关闭