函数:(function)是完成一个特定功能的代码集合。
创建函数3种方式:
(1)声明式
解析器会先读取函数声明,并使其在执行任何代码之前可以访问;
基本语法:
function 函数名(参数)
{
//代码
//返回值:return 结果
}
(2)匿名式
必须等到解析器执行到它所在的代码行才会真正被解释执行
基本语法:
var 函数名 = function(参数)
{
//代码
//返回值:return 结果
}
(3)Function式
基本语法:
var 函数名 = new Function(形参1,形参2...,函数体)
说明:从技术角度讲,这是一个函数表达式。一般不推荐用这种方法定义函数,因为这种语法会导致解析两次代码(第一次是解析常规ECMAScript代码,第二次是解析传入构造函数中的字符串),从而影响性能。在实际开发中很少使用构造函数来创建一个函数对象。
return:
1、return后可以跟任意类型的值
2、return后的值将会作为函数的执行结果返回。
3、在函数中return后的代码将不会执行,跳出当前函数(相当于循环中的break)。
4、函数中没有return语句,或者return后没跟任何值,都会返回undefind。
调用函数:
语法:函数名()
注意:封装到函数中的代码不会立即执行,函数中的代码会在函数调用的时候按照顺序执行。
示例:
<script>
// 声明式
function sum(x,y){
return x + y;
}
console.log(sum(2,5));
// 匿名式
sum = function(x,y){
return x + y;
}
console.log(sum(3,4));
// Function式 Function记得大写
sum = new Function('x','y','return x + y');
console.log(sum(1,6));
</script>
js函数特点:
1、函数也是一个对象
2、将实现某一个功能的代码块(多行代码)封装到一个结构中,从而实现代码的重复利用(复用)。
3、使用typeof检查一个函数对象时,会返回function。