我应该更喜欢函数而不是javascript中的变量吗?

时间:2019-03-14 12:52:24

标签: javascript function const

我在特定的项目中一直使用这种语法:

function a() {
    return 'hello';
}
function b() {
    return `${a()} world`;
}
b();

,几乎所有变量都被省略。为什么不使用下面的语法?

const a = `hello`;
const b = `${a} world`;
console.log(b);

用于返回字符串的函数与const相比有什么优点,因为我看不到任何实用的优点。我唯一想到的是const b始终执行,而function b始终仅在被调用时执行。我想念什么吗?

1 个答案:

答案 0 :(得分:0)

如果目的是提供API路径,则函数方法可提供更大的灵活性。

IE:

您可以根据条件(IE dotENV数据)切换环境(测试/分段/产品)。这在管理API的基本网址时很有用

function getENV() {
  switch (process.env.NODE_ENV) {
    case 'production': {
      return URL_PROD;
    }
    case 'staging': {
      return URL_STAGING;
    }
    case 'test': {
      return URL_TEST;
    }
    default: {
      return DEFAULT_URL;
    }
}

另一个功能可以将默认的baseURL与变量存储的端点混合在一起

IE:

function getEndpointURL(endpoint) {
    return `${getENV()}/${endpoint}`
}