首页 > 解决方案 > 为什么我需要在函数结束之前放置一个 return 语句?

问题描述

function getPizzaCost(size, nTopping) {
  let cost = 10; // base cost for a small pizza
  if(size === "medium") {cost += 4;}
  else if(size === "large") {cost += 8;}
  cost += nTopping;
}

let pizzaSize = "medium";
let numToppings = 19;

let cost = getPizzaCost(pizzaSize, numToppings);
console.log("cost " + cost + "$")

我知道我应该把退货成本放在成本 += nToppings 的正下方,但为什么我需要这样做?有什么具体原因吗?我已经搜索了为什么我们需要它,但它有点令人困惑

标签: javascriptfunctionreturn

解决方案


这是因为cost它是该函数的局部变量,并且无法从外部访问它的值。因此,return 语句返回cost函数执行后的值。

您也可以在外部声明它并使用 that ,但是该变量将可供其他函数使用,这将产生错误的结果。


推荐阅读