【Day13】return的妙传得分

当我们在Chrome的console视窗键入如下程序码,执行一个say()的函式,除了console.log 列印出 Hello World! 之外,下列有个往左的灰色箭头接着undefined,这个 undefined 就是函式表达式的回传值。

回传值(return value)就是函式表达式输出的值,可以让其他的程序码取用。在say()这个函式里,并没有要它回传任何值,只要求它console.log在控制台印出Hello World!,并没有回传任何值。等於是打篮球时都是自干自的,不往外传与队友合作得分。

我们在 say 函式中加入 return “Hello World!” 这一串,告诉它把值传出来。

结果可以看到,往左边的箭头之後接的灰色 undefined变成红色的”Hello world!”了。

函式表达式的输出值叫做回传值( return value ),在呼叫带有回传值的函式的时候,可以把回传值储存在变数中,与其他程序码结合使用,或是传递给另一个函式使用。

在square这个函式中,带入number这个参数,让number相乘。

接着在下面呼叫square函式,带入square(2)当参数,所以等於是先算 2 * 2 = 4,再把值传给外层的square函式,算出4 * 4 = 16。

函式可以接受多个参数,却只能回传一个值,如果没告诉它要回传什麽,它就回传undefined。

而return的另一个妙用,就是用来中断函式的执行:「如果函式的任一个参数无效,就提前跳出函式。无效指的是,参数不是函式正常执行所需的那种参数。」

var nickName = function(name){
    if(name==='欧阳锋'){
        return;
    }
    return  name;
}
nickName('郭靖');   //郭靖
nickName('欧阳锋'); //undefined 跳出函式

所以return也可以拿来中断函式的执行喔。


<<:  DAY 01 动机与LINE Messaging API 介绍

>>:  Day 1 - 疫情下的暑假可以干嘛?

Day 25 constructors、this、static

constructors : Java 中建立物件需要建构子,如果类别没有定义建构子,编译器就会提供...

[想试试看JavaScript ] 物件 建构式

昨天做了一个 player 的物件范例 var player=new Object(); playe...

Day26-好用的网页服务器-nginx(二)

前言 在昨天的文章介绍了 Nginx 的基本观念以及 Nginx container 的内部操作,今...

【Day8】[资料结构]-伫列Queue-实作

伫列(Queue)建立的方法 enqueue: 尾端新增元素 dequeue: 从前端移除元素 pe...

Day19 - AVL tree

大家好,我是长风青云。今天是铁人赛第十九天。 这是今天的影片。 来说个题外话。 今天下午我在看云端课...