js函数使用
函数的定义:具有特定功能的能够重复使用的闭合的代码块
注意:
1.函数的声明
-
函数的声明1
function 函数名(参数1,参数2){
函数的内容
}
函数的声明2
函数表达式
var 变量 = function(参数1,参数2,…){ 函数体 }
函数的声明3
调用函数的构造方法
var 变量 = new Function(); -
2.函数只有调用后才会被执行
-
function makebaozi(){ console.log('和面'); console.log('剁馅儿'); console.log('上屉'); console.log('出锅'); console.log('=============='); }; makebaozi(); var func = function(){ console.log('函数表达式方式声明的函数') }; func();
函数的形参和实参
实现功能:求两个数的和 -
实参:实际参数 在函数调用处传入函数具体数值
-
形参:形式参数 在函数的声明处 用于接收函数调用处传递的实参
-
例子:
function sum(num1,num2){ console.log(num1,num2); var c= num1+num2; console.log(c); } sum(2,3);
return : 返回
-
将值(函数结果)返回到函数调用处
-
如果函数没有返回值 还是用变量接收 ,则变量的值为undefined
-
如果return 单独成行,则意味着函数结束
-
例子:
-
function test(){ console.log('11111'); console.log('22222'); return; console.log('33333'); } var r1 = test(); console.log(r1);
-
用函数调用的方式实现2-200之间的质数
for (var i = 2; i<=200;i++) { if(isZhiShu(i)) { console.log(i); } } function isZhiShu(num){ for (var i = 2; i<num; i++) { if(num % i==0){ return false; } } return true; }
函数的类型
按照函数的书写结构 -
有参有返回值
当形参没有获取到实参传递的值时,那么它的值为undefined -
例子:
function sum(a,b,c){ console.log(a,b,c); return a+b+c; } console.log(undefined+20); var result =sum(10,20); console.log(result);
-
有参无返回值
当一个函数没有返回值 但是在函数调用处仍然使用变量接收,则此变量的值为undefined -
例子:
function sum(a,b,c){ console.log(a,b,c); }
-
无参有返回值
-
例子:
function sum2(){ return 1+1; } console.log(sum2())
-
无参无返回值
-
例子:
function sum3(){ console.log('zzzzzzzz~') } console.log(sum3())
js没有重载的概念:
js中如果多个函数的名字相同,则最后一个函数会覆盖之前的函数
作用域
js中只有两种作用域
- 全局作用域
- 函数作用域:在函数内部声明的变量,在函数内部可见。
注意:没有块级作用域