我在特定的项目中一直使用这种语法:
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
始终仅在被调用时执行。我想念什么吗?
答案 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}`
}