持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第 8 天,点击查看活动详情
它是一个对象。要执行一个函数,您将调用它,也称为调用函数。您还可以将值传递给函数以在函数中使用。事实上,函数总是会返回一个值。因此,如果您不指定返回值, JavaScript函数将返回 undefined。
总而言之,JavaScript 函数是一个对象。它是子程序的一部分,其目标是完成一种特定类型的任务。
函数定义
使用关键字 function 定义函数。
function 函数名(参数列表){
函数体
return ;
}
函数声明后不会立即执行,会在我们需要的时候调用到。 这里需要注意几点:
- 参数:一定不要带数据类型;
- 分号是用来分隔可执行JavaScript语句。 由于函数声明不是一个可执行语句,所以不以分号结束。
如何使用函数,非常简单,例如,实现 1+5。
function sum(a,b){
return a+b;
}
console.log(sum(1,5));
知道定义函数和使用之后,接下往下看。
有返回值
这个非常好理解,就是通过调用该函数之后,给我们返回结果。例如,4 X 8。
function sum(a,b){
return a*b;
}
var result=sum(4,8);
console.log(result);
无返回值
函数无返回值恰好与有返回值相反,在调用函数之后,不会给我们返回结果。例如,4 X 8。
function sum(a,b){
console.log(a*8);
}
var result=sum(4,8);
console.log("无返回值:"+result);
从这个执行结果,就更明白有返回值和无返回值区别。
函数内部属性
arguments: 是一个类数组,用来保存函数传递过来的参数。arguments 中还有一个很重要的属性就是 callee,是一个指针变量,指向的是 arguments所在的函数本身,在递归的时候最好用这个属性,因为如果函数名改变了,也不需要改变内部的实现,arguments.callee()始终代表的是这个函数本身。
this :这个属性代表的是它所在的对象本身,this 引用的是函数据以执行的环境对象,也就是函数执行的作用域。
构造函数
函数同样可以通过内置的 JavaScript 函数构造器(Function())定义。
var myFunction = new Function("a", "b", "return a * b");
var x = myFunction(4, 3);
console.log(x);
上述函数以分号结尾,因为它是一个执行语句。
匿名函数
没有函数名称函数称为匿名函数。
var fn = function(a, b) {// 没有名字的函数,应该用一个变量来接收
return a * 10 + b;
};
console.log( fn(3, 4) );