【问题标题】:What happen under the hood in javascript if function is having more than one return Statment?如果函数有多个返回语句,javascript 的底层会发生什么?
【发布时间】:2021-06-19 02:05:30
【问题描述】:

在下面的代码中,我想知道引擎盖下发生了什么?

function data() {
  return 4;
  return;
}

console.log(data()); // return 4

但是

function data() {
  return;
  return 4;
}
console.log(data()); //return undefined

这背后的原因是什么?我可能认为其背后的原因是“javascript 是一种解释性语言”,但我不确定。

【问题讨论】:

  • 只有块中的第一个return语句在没有执行之后才会被执行。
  • 你了解return 的作用吗?为什么这意味着第二个会被忽略?
  • developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…: “当在函数体中使用return语句时,函数的执行将停止。如果指定,则将给定值返回给函数调用者。”
  • 我不认为“非常清楚”意味着你认为它的意思。
  • @ScottHunter “你一直在用那个词”。

标签: javascript function


【解决方案1】:

函数将返回第一个return

function data(){
       return ;
       return 4;
    }
console.log(data());

在上面带有第一个 return 的代码中,您没有返回任何参数/值,因此它保持未定义。

【讨论】:

    猜你喜欢
    • 2016-06-12
    • 1970-01-01
    • 2018-11-20
    • 2013-02-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-31
    • 2018-01-23
    相关资源
    最近更新 更多