使用方法
卡路里赤字计算器把「消耗」和「摄入」两个数字直接换成六组能执行的结论,五步走完:
- 「每日总消耗 TDEE」填你一整天的总消耗热量,演示值 2200 千卡。手头没有数据时,可先用体重(公斤)× 30 粗估,再按活动量上下调 10%。
- 「每日摄入」填一天真正吃进去的热量,演示值 1700 千卡。建议连记三天取平均,比单日回忆更接近真实。
- 「计划天数」填 1~365,演示值 30。天数只影响累计缺口与预计减重,不影响每日缺口。
- 「每公斤脂肪等价热量」默认 7700 千卡,可调 6000~9000;想看保守版本就填 9000。
- 点「计算热量缺口」,或在任一输入框按 Enter。六张卡片分别给每日缺口、每周缺口、周期累计、预计减重、每周减重与缺口占比;下方对照表默认 12 行,「加载更多」补到 16 行,可导出 CSV、JSON 或复制 TSV。
卡路里赤字计算器能解决什么
它把「我到底少吃了吗」变成一个有单位的数字,主要解决四类问题:
- 判断方向对不对:消耗 2200、摄入 1700 时每日缺口 500 千卡;万一填反了(摄入 2200、消耗 1700),结果是负的 500,页面直接标成「热量盈余」,不用你自己判断正负。
- 把缺口换成体重预期:30 天累计 15000 千卡,按 7700 千卡每公斤折算约 1.95 公斤。很多人以为每天少 500 就能一周掉一斤,其实每周只有约 0.45 公斤,这个落差最容易让人半途放弃。
- 校验速度是否过猛:看「缺口占每日消耗的比例」,演示值 22.73%。长期超过 25% 通常难以维持,也更容易掉肌肉,此时应把天数拉长或把缺口调小。
- 反推摄入目标:先定想要的每周减重(例如 0.4 公斤),用对照表倒查需要的每日缺口(约 440 千卡每天),再从 TDEE 里减掉它,得到当天的摄入上限。
本页不做的事:不替你算 TDEE 本身(那需要基础代谢与活动系数,请用对应的消耗工具);不区分脂肪、糖原与水分带来的体重变化;不输出饮食处方或医学建议。若你有基础疾病、处于孕期或未成年,请以专业意见为准。
原理和变量
① 用了哪个具体函数:核心是四个一次运算,缺口 = TDEE − 摄入、每周 = 缺口 × 7、累计 = 缺口 × 天数、减重 = 累计 ÷ 每公斤等价热量,占比用 缺口 ÷ TDEE × 100。整页没有迭代或拟合,一次算完,所以每个结果都能手工复核。
② 关键参数为什么这样取:每公斤等价热量默认 7700 千卡,来自「脂肪组织约含 87% 纯脂肪、每克脂肪约 9 千卡」的经验折算(0.87 × 9000 约 7830,业界常取 7700)。它比直接用 9000 更接近真实体脂,所以默认值选它而不是更整齐的 9000。
③ 遵循哪个标准:能量单位统一用千卡(kcal),1 千卡 = 4.184 千焦;日常口语里的「卡路里」在这里等价于千卡,不是小写的 cal。小数位由「小数位」输入决定,默认 2 位,取舍统一用 Number(v.toFixed(d))。
④ 输入怎么变成输出:先 2200 − 1700 = 500;再 500 × 7 = 3500;500 × 30 = 15000;15000 ÷ 7700 = 1.94805… 保留两位得 1.95;3500 ÷ 7700 = 0.4545… 得 0.45;500 ÷ 2200 × 100 = 22.73。六个中间量在六张卡片里一一对应。
⑤ 边界与阈值:TDEE 允许 800~6000,摄入 0~6000,天数 1~365,等价热量 6000~9000,小数位 0~4。任一项为空、非数字、越界都会给出带字段名的中文提示后才继续;摄入大于 TDEE 不算错误,只是缺口为负并显示「热量盈余」。
⑥ 常见误用的正确解释:把 TDEE 当成基础代谢(BMR)会让缺口虚高一大截,BMR 只是躺着不动的消耗,TDEE 才是全天的;把头几天的快速掉秤当成脂肪减少,其实多半是糖原和水分;把 7700 线性外推到半年以上会明显高估,因为身体会随体重下降自动降低消耗。
完整示例(数值仅作演示)
保持演示值:每日总消耗 2200 千卡、每日摄入 1700 千卡、计划 30 天、每公斤 7700 千卡、保留 2 位小数。
- 每日热量缺口:2200 − 1700 = 500 千卡每天。
- 每周缺口:500 × 7 = 3500 千卡每周。
- 周期累计:500 × 30 = 15000 千卡。
- 预计减重:15000 ÷ 7700 = 1.94805… 保留两位 → 1.95 公斤。
- 每周预计减重:3500 ÷ 7700 = 0.4545… 保留两位 → 0.45 公斤每周。
- 缺口占消耗比:500 ÷ 2200 × 100 = 22.73%。
这六组数字与页面默认卡片、对照表第 5 行完全一致,可三处核对;把摄入改成 2200、消耗改成 1700,则会得到负 500 并提示热量盈余。
输入范围与对照表
对照表固定 30 天、每公斤 7700 千卡,前 12 行改变每日缺口,后 4 行继续放大缺口,累计缺口与预计减重按同一组公式计算。
| 每日缺口(千卡) | 每周缺口(千卡) | 30 天累计(千卡) | 预计减重(公斤) |
|---|---|---|---|
| 100 | 700 | 3000 | 0.39 |
| 200 | 1400 | 6000 | 0.78 |
| 300 | 2100 | 9000 | 1.17 |
| 400 | 2800 | 12000 | 1.56 |
| 500(演示值) | 3500 | 15000 | 1.95 |
| 600 | 4200 | 18000 | 2.34 |
| 700 | 4900 | 21000 | 2.73 |
| 800 | 5600 | 24000 | 3.12 |
| 900 | 6300 | 27000 | 3.51 |
| 1000 | 7000 | 30000 | 3.90 |
| 1100 | 7700 | 33000 | 4.29 |
| 1200 | 8400 | 36000 | 4.68 |
| 1300 | 9100 | 39000 | 5.06 |
| 1400 | 9800 | 42000 | 5.45 |
| 1500 | 10500 | 45000 | 5.84 |
| 1600 | 11200 | 48000 | 6.23 |
对照表能看出「缺口翻倍、减重也翻倍」的线性关系:500 千卡每天对应 1.95 公斤,1000 千卡每天正好对应 3.90 公斤,是严格的 2 倍。
结果边界和舍入
舍入位置:卡路里赤字计算器的六个结果都按「小数位」统一保留(默认 2 位,Number(v.toFixed(d)))。因为先 toFixed 再拼接,演示值不会出现 1.9500000000000002 这类浮点尾巴。小数位设 0 时,1.95 显示为 2,适合只看整数公斤。
什么时候会拒绝计算:任一项为空、填了非数字、或越过上下限时,页面在红色区域给出具体字段名和允许区间,不会静默归零。TDEE 低于 800 通常意味着单位或量级填错;天数超过 365 请分两段算。
负数与盈余:摄入大于消耗时缺口为负,页面照常算出负的每周与累计值,并在卡片标题上写「热量盈余」,这是正常结果不是报错。
结果性质:这是基于能量守恒的理论估算值,没有考虑代谢适应、水分波动与肌肉量变化,只作计划与复盘参考,不构成饮食或医疗建议。
常见问题
摄入比消耗大会算出什么?
会算出负缺口,页面标为「热量盈余」。例如摄入 2200、消耗 1700 时每日负 500 千卡,30 天累计负 15000,代表这段时间处于能量过剩状态。
7700 千卡每公斤是怎么来的?
来自脂肪组织约含 87% 纯脂肪、每克脂肪约 9 千卡的经验折算,0.87 × 9000 约 7830,业界习惯取 7700。想看保守估计可在「每公斤等价热量」里改成 9000。
为什么实际体重变化和数字差很多?
因为前几周的体重波动主要来自糖原与水分,不是脂肪。减少碳水后身体会排水,体重掉得快;补回来又会回升。建议看四周以上的趋势线,而不是单日数字。
计划天数能超过 365 吗?
单页上限是 365 天。更长的计划建议分年计算,并且不要把同一个每日缺口一路套到底,体重下降后消耗也会下降,需要重新估算。
小数位设多少合适?
看每日缺口用 0 位最清爽;看预计减重用 2 位(1.95 公斤);做对照实验时可用 3~4 位。上限 4 位,再多没有实际意义。
缺口是不是越大越好?
不是。演示值 22.73% 属于中等偏积极;长期超过 25% 难以坚持,也更容易流失肌肉。更稳妥的做法是把天数拉长,用 300~500 千卡的温和缺口。
千卡和千焦怎么换算?
1 千卡 = 4.184 千焦。若你的食物标签用千焦,先除以 4.184 换成千卡再填,例如 9200 千焦约等于 2200 千卡。
我的输入会被保存或上传吗?
不会。全部计算在浏览器内完成,刷新即清空;可在开发者工具的 Network 面板复查,点「计算热量缺口」时不会发出任何请求。
相关工具
- 步数换算卡路里:先算出运动消耗,再填进本页的每日总消耗。
- 最大摄氧量最大值计算器:评估心肺水平,判断活动系数该怎么取。
- 阶乘计算器:做多档位排列组合试算时核对数量级。
- 数字转英文单词:把热量数字写成英文,方便填英文表格。
- FPS转MS计算器:另一类单位换算,用来校验换算口径是否一致。
- EmergencyFund计算器:把「按天累计」的思路用到储蓄计划上。
- 生成器尺寸计算器:同样是「总量除以单位量」的除法模型。