函数的调用和引用

前言:大家好~我是阿飞。在我们搞清函数调用和引用之前,让我们先认识下函数的基本结构吧。

函数的结构

function demo (a,b){
		console.log(a+b);
		return 88;
	} 
	demo("o","k");
	demo;

function 函数名("o","k"){
		函数体
		return 返回值
	}
	函数调用(实参1,实参2);
	函数引用;

从上我们可以看出函数的调用就是demo(),函数的引用为demo

demo()  函数调用  (并不需要加分号,加分号是为了语法完整。实际运用时大多需要加分号)
demo	函数引用
注意此时的分号意思是,结束一条语句。函数调用和引用本质上并不需要;分号。很多初学者都会误以为加了分号才是函数调用。

总结:函数调用和引用的区别

  • 函数调用加括号,函数引用不加括号。

  • 函数调用就是立刻执行函数。引用就是不执行。

      function demo1 (a,b){
      	console.log(a+b);
      	return 88;
      } 
      demo1("o","k");  //后台打印ok
      
      function demo2 (a,b){
      	console.log(a+b);
      	return 88;
      } 
      demo2;			//后台没有任何显示
    

tip:由此可见想要执行函数里的内容的话必须加括号,就是使用函数调用


使用console.log打印函数调用和引用的区别

	打印函数调用
	function demo1 (a,b){
		console.log(a+b);
		return 88;
	} 
	console.log(demo1("o","k")); 
	//后台打印  
	//第一行	ok
	//第二行	88
	
	
	打印函数引用
	function demo2 (a,b){
		console.log(a+b);
		return 88;
	} 
	console.log(demo2); 
	//后台打印结果
	function demo2(a,b){
		console.log(a+b);
		return 88;
	}

使用console.log打印函数调用和单独使用函数调用的区别

	打印函数调用
	function demo1 (){
		console.log("ok");
		return 88;
	} 
	console.log(demo1()); 
	//后台打印  
	//第一行	ok
	//第二行	88

	

	函数调用
	function demo1 (){
		console.log("ok");
		return 88;
	} 
	demo1();
	//后台打印  
	//第一行	ok

tips:由此可见如果想要显示return返回值内容的话 需要console.log,单纯调用无法显示返回值。


	打印函数调用
	function demo1 (){
		console.log("ok");
		return;
	} 
	console.log(demo1()); 
	//后台打印  
	//第一行	ok
	//第二行 undefined

	

	打印函数调用
	function demo2 (){
		console.log("ok");
	} 
	console.log(demo2()); 
	//后台打印  
	//第一行	ok
	//第二行 undefined

tips:由此可见return不写 或者return后面不写值的话 默认返回undefined未定义


此外函数调用和引用还可以有各种用法

例1:
	function demo (){
		console.log("ok");
	} 
	var practice = demo();
		//后台打印
		//第一行	ok
	
	console.log(practice);
		//后台打印
		//第一行	ok
		//第二行	undefined

	console.log(practice());
		//报错


例2:
	function demo (){
		console.log("ok");
	} 
	var practice = demo;
	practice();
		//后台打印
		//第一行	ok
	console.log(practice());
		//后台打印
		//第一行	ok
		//第二行	undefined

只有函数才可以使用()括号调用,如果单独一个变量加()括号会直接报错

	var demo = 100; 
	
	demo();
	//因为没有函数 所以会报错

tips:通常函数调用写在函数体下方(后面),但是也可以写在上方(前面)

//函数调用正常位置写法
	function demo (){
		console.log("ok");
	} 
	demo();


//函数调用提前
	demo();
	function demo (){
		console.log("ok");
	} 

tips:函数调用提前有一个条件就是,必须写上函数名!没有函数名会报错。

好了,相信大家对函数调用和引用有了基本的了解了吧。

提问:阿飞~我表示还是没有看懂你写的什么鬼。。。。

回答:亲~如果看不懂没关系,我的建议是:可以再找找其他教程。看下视频教程再结合下文字教程。这样自学的效率事半功倍。文字教程+视频教程才是王道哦!

posted on 2017-08-27 22:57  安度因路飞  阅读(919)  评论(0编辑  收藏  举报

导航