您当前的位置: 首页 >  Java

import java.lx

暂无认证

  • 6浏览

    0关注

    81博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

JavaScript函数

import java.lx 发布时间:2022-09-16 20:36:19 ,浏览量:6

目录

函数

定义函数的两种方式

函数自调用

函数的数据类型

回调函数

作用域&块级作用域

局部变量VS全局变量

隐式全局变量VS全局变量

作用域链 

预解析

函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。

函数分两种

命名函数(函数声明):如果函数有名字,就是命名函数

匿名函数(函数表达式):如果函数没有名字,就是匿名函数



	
		
		
	
	
		
			//命名函数(函数声明)
			function f1(){
				console.log('我是命名函数');
			}
			
			//命名函数调用
			f1();
			
			//匿名函数(函数表达式)
			var f2 =function (){
				console.log('我是匿名函数');
			}
			
			//匿名函数调用
			f2();
			
		
	
定义函数的两种方式

函数声明

function 函数名 () {  //函数体  }

函数表达式

var 变量 = 匿名函数 ;

把一个函数给一个变量,此时形成了函数表达式

函数声明和函数表达式二者区别:

在页面中有两个同名的命名函数,后面的一个命名函数会覆盖前面的命名函数

在页面中有两个同名的匿名函数,后面的匿名函数不会覆盖前面的匿名函数



	
		
		
	
	
		
			function f1() {
				console.log("哈哈哈");
			}
			f1();

			function f1() {
				console.log("你好");
			}
			f1();

			//如果在页面中有两个同名的命名函数,后面的一个命名函数会覆盖前面的命名函数

			var f2 = function() {
				console.log("函数表达式");
			};
			f2();
			var f2 = function() {
				console.log("函数声明");
			};
			f2();
			//如果在页面中有两个同名的匿名函数,后面的匿名函数不会覆盖前面的匿名函数
		
	

函数自调用

声明函数的同时进行调用

语法:

function 函数名() {
	//函数体
}
函数名();


	
		
		
	
	
		
			//先声明函数
			function f1(){
				console.log("先声明函数,再调用");
			}
			
			f1();
			
			//声明函数的同时进行调用
			(function f2(){
				console.log('声明函数的同时调用函数');
			})();
			
			
		
	

函数的数据类型

函数是有数据类型,它的数据类型是:function



	
		
		
	
	
		
			function f1(){
				console.log('qwert');
			}
			
			//输出函数的数据类型
			console.log(typeof f1);//function
			
			var f2 = function (){
				console.log('asdfg');
			}
			
			console.log(typeof f2);//function
			
		
	

 任何数据类型都可以作为参数,函数也可以叫做回调函数



	
		
		
	
	
		
			function f1(x,y) {
				console.log(x+y);
			}
			f1(10,20);
			f1('hello','java');
			f1('123',123);

			function f3(x) {
				console.log(x);
			}
			f3(true);
			

		
	

 任何数据类型都可以作为返回值,函数也可以



	
		
		
	
	
		
			function f1() {
				console.log("f1函数调用了");
				return function() {
					console.log("我是f1函数里return返回的结果");
				};
			}
			
			//ff是一个匿名函数
			var ff=f1();
			
			ff();
		
	

回调函数

函数A作为参数传递到另一个函数B中,并且这个函数B执行函数A。就说函数A叫做回调函数



	
		
		
	
	
		

			
			//回调函数:在一个函数中去调用另外一个函数,调用的这个函数是由参数传递过来的
			function f1(fn){
				console.log('我是f1函数里的输出语句');
				fn();	
			}
			function f2(){
				console.log("我是回调函数哦~");
			}
			f1(f2);


			
			
		
	
作用域&块级作用域

作用域:作用域就是在这一个区域内有作用(使用范围)

块级作用域:一对大括号就可以看成是一块

JS中没有块级作用域,但是函数除外



	
		
		
	
	
		
			{
				var num = 100;
				console.log(num);
			}
			
			console.log(num);
			
			if(true){
				var num2 =200;
				console.log(num2);
			}
			
			console.log(num2);
			
			for(var i = 1;i            
关注
打赏
1663829786
查看更多评论
0.0396s