zoukankan      html  css  js  c++  java
  • return 的返回值与结束功能

    前言:大家好我是阿飞在js中return是很重要的基础。一定要彻底掌握理解它哦。否则js学习到中后期很容易懵逼的+_+

    什么是return?

    1.在js中return是一个表达式语句,如果后面什么都不写,他的默认返回值为undefined!

    2.在函数内,可以用return语句指定返回值。如return 13;,也可以没有返回值。如 return;

    3.每个函数都存在一个返回值。但是处于隐身状态!必须通过return体现出。

    4.返回值和输出没关系,输出是输出console.log之类的,返回值是返回值!

    3.return具有结束的功能!当函数执行到return语句时,不管后面有无代码,都将结束函数的执行。

    4.return 必须放在函数内!否则报错


    我们先看下默认返回值undefined是什么鬼

    例1:
    function demo1(){
    		
    	}
    	console.log(demo1()); 
    	//后台打印
    		// undefined
    
    例2:
    	function demo2(){
    		return;
    	}
    	console.log(demo2()); 
    	//后台打印
    		// undefined
    

    tips:由此可见函数内 不管加不加return ,都会存在return返回值。什么都不写的话 默认返回undefined!

    接下来我们看下return的结束功能

    	function demo1(){
    		console.log("我是阿飞");
    		console.log("我是最帅");
    	}
    	demo1();
    	//后台打印
    		//我是阿飞
    		//我是最帅
    
    	
    	function demo2(){
    		console.log("我是阿飞");
    		return;
    		console.log("我是最帅");
    	}
    	demo2();
    	//后台打印
    		//我是阿飞
    

    tips:由此可见 函数内return后(下方) 的内容便无法显示了。这便是return结束的功能。


    我们再来看下 return 必须放在函数内!是啥意思

    	console.log(1);
    	return;
    	console.log(2);
    	//报错
    

    tips:所以这件事教育我们 return不在函数内的话肯定会报错滴~


    另外return还可以运用在for循环和分支语句里

    function demo1(){
    		for (var i = 0; i < 5; i++) {
    			if (i==2) {
    				return "over";
    			}
    			console.log(i);
    		}
    	}
    	demo1();
    		//后台打印
    			//第一行 0
    			//第二行 1
    	console.log(demo1());
    		//后台打印
    			//第一行 0
    			//第二行 1
    			//第三行 over
    

    最后我们还需要深刻理解return结束的作用域!

    	function demo1(){
    		for (var i = 0; i < 10; i++) {
    			if (i==4) {
    				return;
    			}
    			console.log(i);
    		}
    		console.log("我不受return影响哟.....才怪");
    		function demo2(){
    			console.log("我是demo2,demo1是我的父级,并且return在我上面,所以我无法显示了。。。");
    		}
    		demo2();
    
    		for (var j = 1; j <10; j++) {
    			console.log(j);
    		}
    	}
    	demo1();
    	//后台打印
    		//0
    		//1
    		//2
    	
    	function demo3(){
    		console.log("我是demo3,return管不着我!哼")
    	}
    	demo3();
    	//后台打印
    		//我是demo3,return管不着我!哼
    

    由此可见 return的作用域仅限在自己的函数内。当一个函数里出现return时候,那么它下方的所有代码都不执行了。和他同级的函数他管不着哦~


    最后再来一个烧脑搞事情的练习~

    function demo(){
    		return console.log("我要搞事情~");
    	}
    console.log(demo());
    猜猜结果是啥?	
    
    
    	//后台打印
    		//我要搞事情~
    		//undefined
    解析:
    1.首先return console.log("我要搞事情~"); 打印我要搞事情~
    2.console.log()其实本身就是一个函数,我们都知道函数里都有返回值,而返回值必须通过return才能显示出来。
    3.console.log("我要搞事情~");显然这个函数里并没存在return 所以当函数没有设置return,或者return后面不写数值的时候。默认undefined
    

    总结

    提问1:阿飞~我分不清return返回值的位置,和return结束功能的位置欸。。。O.O

    回答1:通常你想要返回值的时候添加return,一般写在函数最下方。如果你想结束功能时候,return的位置不一定。

    提问2:阿飞~我表示还是分不清return的返回值和结束区别欸。。。O.O

    回答2:最简单的鉴别方法是:当你写console.log(函数调用)时候会出现返回值(其实此刻出现返回值后同时也具有结束的功能)。---------------------其他时候return都是具有结束功能。不会显示出返回值(注意:不显示不代表不存在!!!,但是因为return是个表达式,所以他其实依旧存在返回值,只是暂时没显示而已)

  • 相关阅读:
    Liquid模板语言参考文档
    Shopify主题title/description等SEO设置
    23个Shopify免费模板值得拥有
    navicate 激活
    idea 内存溢出
    mysql for update 使用说明
    quartz-SimpleSemaphore
    达梦数据库冷备份还原的简单记录
    Beyond Compare 的比较以及导出的简单设置方法
    PG13 离线安装的简单办法
  • 原文地址:https://www.cnblogs.com/anduyinglufei/p/7442212.html
Copyright © 2011-2022 走看看