Js 函数
一:什么是函数
复用性特别强
二:函数声明
格式:function 函数名称(){}
*******************不会立即执行**********************
三:函数调用
格式:函数名称()
四:函数参数
格式: function 函数名称(形参1 ,形参2 ,形参3 ,...){ }
函数名称(实参1 ,实参2 , 实参3 , ... );
扫描二维码关注公众号,回复:
1601849 查看本文章
形参:虚的 、形容的一个东西
实参:实实在在存在,是一个真实的东西
******************
参数是用逗号(,)分隔开的,并且形参和实参都是对应的关系
五、函数对象:
arguments
理解:只看实参的一个对象
return ====》返回
返回是输出,但是没有任何的效果 可以在调用函数的时候用alert document.write console.log
六、匿名函数
格式:
function(){}
****************以上格式在js中会报错,原因本身格式有问题,没办法调用
七、函数表达式
格式:var 名称 = function(){}
调用: 名称();
******************补充
调用函数的时候,加上(), 如果不加() 表示打印整个函数
函数声明和函数表达式
1》 函数声明是不看调用函数顺序的
2》 函数表达式必须要看执行顺序 ,从上到下
八 、匿名函数自我执行
不用调用自己执行函数体
格式:(function(形参){
函数体
})(实参)
九.函数执行环境
如果在函数体内定义局部变量,在全局打印不出来
如果在函数体内定义全局变量,在全局可以打印出来
//function 函数名称(){} /*function demo(){ //函数声明 alert(111111111111) } //函数名称() demo(); //调用函数 */ /*格式: function 函数名称(形参1 ,形参2 ,形参3 ,...){ } 函数名称(实参1 ,实参2 , 实参3 , ... ); */ /*function demo(str,aaa,num){alert(num)} demo('你','好',123456);*/ /*str === >你 aaa ====> 好 num ===> 123456*/ /*function demo(){ alert(1) }*/ /*函数的复用性*/ /*demo(); demo(); demo();*/ /**arguments**/ //arguments 是只关注实参的函数对象 /*function demo(str1,str2){ alert(str1+'-'+str2); console.log(arguments[2]) } demo(4,5,'你好');*/ /*0===>4 1===>5*/ /*function fn(num1,num2){ // alert(num1+num2); // alert(arguments.length) var num = 0; for(var i = 0; i < arguments.length; i++){ num += arguments[i]; } return num; } alert(fn(3,4,8))*/ /*return**/ /*function fn(){ return 1; } alert(fn()); //弹出1 document.write(fn()); //在页面输出1 console.log(fn()); //控制台打印1 */ /*function sum(){ var num = 0; for(var i = 0; i < arguments.length ; i++){ num+= arguments[i]; } return num; } alert(sum(3,5,7)) */ //函数声明 //function fn(){} //匿名函数 /*function(){ alert(1111); }*/ //函数表达式 /*var fns = function(){ alert(1111); } */ //fns() //alert(fns) //函数声明 /*function fn(){ return 'fn' } alert(fn()); //函数表达式 var fnName = function(){ return 'fnName' } alert(fnName())*/ /***匿名函数自我执行*/ /*function fn(){ alert(11111111111) } fn();//调用函数才可以执行 var a = function(){ alert(11111111111) } a();//也需要调用*/ /*(function(num,str){ alert(num+"---"+str) })(4,'js') ;//匿名函数的自我执行 */ /**函数执行环境*/ /*function fn(){ return 1111; } alert(fn());*/ /*var num = 10; alert(window.num) alert(num)*/ /*function fn(){ // var num = 10; //局部变量 // window.num = 10; //全局变量 num = 10; document.write(num) return num; } fn(); alert(num) */ (function(){ var a = 10; //局部的a window.a = a; //把局部的a 给全局的a })(); alert(a)