45 lines
1.1 KiB
JavaScript
45 lines
1.1 KiB
JavaScript
/**
|
|
* 环境变量工具类
|
|
* 提供环境变量的读取和类型转换功能
|
|
*/
|
|
|
|
/**
|
|
* 获取环境变量值
|
|
* @param {string} key 环境变量名
|
|
* @param {string} defaultValue 默认值
|
|
* @returns {string} 环境变量值或默认值
|
|
*/
|
|
function getEnv(key, defaultValue = '') {
|
|
return process.env[key] || defaultValue;
|
|
}
|
|
|
|
/**
|
|
* 获取布尔类型的环境变量值
|
|
* @param {string} key 环境变量名
|
|
* @param {boolean} defaultValue 默认值
|
|
* @returns {boolean} 环境变量的布尔值
|
|
*/
|
|
function getBoolEnv(key, defaultValue = false) {
|
|
const value = process.env[key];
|
|
if (value === undefined) return defaultValue;
|
|
return value.toLowerCase() === 'true';
|
|
}
|
|
|
|
/**
|
|
* 获取数字类型的环境变量值
|
|
* @param {string} key 环境变量名
|
|
* @param {number} defaultValue 默认值
|
|
* @returns {number} 环境变量的数字值
|
|
*/
|
|
function getNumEnv(key, defaultValue = 0) {
|
|
const value = process.env[key];
|
|
if (value === undefined) return defaultValue;
|
|
const num = Number(value);
|
|
return isNaN(num) ? defaultValue : num;
|
|
}
|
|
|
|
module.exports = {
|
|
getEnv,
|
|
getBoolEnv,
|
|
getNumEnv
|
|
}; |