JavaScript是一种解释型语言,它的函数调用方式和参数传递比较灵活。函数调用的方式可以分为两种:函数声明和函数表达式。
函数声明
函数声明的方式是用function关键字来声明一个函数,可以在任何地方调用它,如:
function add(a, b) { return a + b; } var result = add(1, 2); // result = 3
函数表达式
函数表达式的方式是定义一个变量,将函数赋值给变量,可以在任何地方调用它,如:
var add = function(a, b) { return a + b; }; var result = add(1, 2); // result = 3
参数传递
JavaScript中参数传递有两种方式:位置参数和关键字参数。
位置参数
位置参数是指在函数调用时,参数的位置要和函数定义时的参数位置一一对应,如:
function add(a, b) { return a + b; } var result = add(1, 2); // result = 3
关键字参数
关键字参数是指在函数调用时,参数的位置可以不一定要和函数定义时的参数位置一一对应,而是根据参数的名称来确定参数的位置,如:
function add(a, b) { return a + b; } var result = add(b=2, a=1); // result = 3
参数默认值
JavaScript中也可以给参数指定默认值,如果函数调用时不传入参数,则采用默认值,如:
function add(a=1, b=2) { return a + b; } var result = add(); // result = 3
可变参数
JavaScript中还可以使用可变参数的方式,即函数定义时不定义参数个数,而是使用arguments变量来获取参数,如:
function add() { var result = 0; for (var i = 0; i < arguments.length; i++) { result += arguments[i]; } return result; } var result = add(1, 2, 3); // result = 6