JavaScript/TypeScript 十进制转百分比转换公式与实现咨询
十进制转百分比计算方法及JS/TS实现
计算公式
匹配你示例中输出整数百分比的需求,计算逻辑如下:
- 先将十进制数值乘以100,得到百分比基数
- 对基数做四舍五入取整处理
- 最终结果为取整数值拼接百分号
%
简化公式可写为:四舍五入(十进制数 × 100) + "%"
JavaScript/TypeScript 实现代码
基础整数百分比实现(完全匹配你的示例需求)
/** * 十进制小数转百分比字符串 * @param decimal 待转换的十进制数值 * @returns 带%后缀的整数字符串 */ function decimalToPercent(decimal: number): string { return `${Math.round(decimal * 100)}%` }
效果验证
- 输入
0.866:Math.round(0.866 * 100) = 87,输出87%,符合要求 - 输入
0.77:Math.round(0.77 * 100) = 77,输出77%,符合要求
支持自定义小数位的扩展实现
如果需要保留指定小数位的百分比,可以使用以下版本:
/** * 十进制小数转百分比字符串(支持自定义小数位) * @param decimal 待转换的十进制数值 * @param fixed 保留的小数位数,默认0位 * @returns 带%后缀的百分比字符串 */ function decimalToPercent(decimal: number, fixed: number = 0): string { return `${(decimal * 100).toFixed(fixed)}%` }
toFixed方法默认遵循四舍五入规则,同时会自动对不足位数的部分补零。
内容的提问来源于stack exchange,提问作者Ananya Amar
相关产品推荐
相关产品推荐

