血糖三项检测 · 智能分级评估
三项检测值(任填一项即可评估,全部填写更准确)
本工具数据全部保存在你本机浏览器(localStorage),保留最近 30 次记录,不上传任何服务器。
诊断标准依据 WHO 1999 + ADA 2024(美国糖尿病协会),结果仅供参考,确诊请咨询医生。
空腹/餐后/糖化血红蛋白参考
三项检测值(任填一项即可评估,全部填写更准确)
本工具数据全部保存在你本机浏览器(localStorage),保留最近 30 次记录,不上传任何服务器。
诊断标准依据 WHO 1999 + ADA 2024(美国糖尿病协会),结果仅供参考,确诊请咨询医生。
标记 高亮 = 你当前数值所在区间。
公式(ADA 推荐):eAG (mg/dL) = 28.7 × HbA1c% − 46.7,再除以 18.018 得 mmol/L。
HbA1c 反映过去 8-12 周的平均血糖水平,是糖尿病管理金标准。
GI < 55 为低 GI(推荐)、55-70 为中 GI(适量)、> 70 为高 GI(控量)。糖尿病人应优先选择低 GI 食物,搭配蛋白质和膳食纤维可进一步降低餐后血糖反应。
了解工具定位 · 使用场景 · 对比优势
拿到体检报告后,空腹血糖 6.3 mmol/L,糖化血红蛋白 6.5%,单看数字不知道严不严重。用本工具输入这三项数值,立刻对照《中国2型糖尿病防治指南》的参考范围,标出哪些指标偏高、哪些正常,省去自己翻指南查标准的麻烦。
家里长辈饭后 2 小时测到血糖 9.8 mmol/L,担心是不是糖尿病前兆。本工具直接给出餐后血糖的参考上限(7.8 mmol/L)和糖尿病诊断阈值(11.1 mmol/L),一眼看清 9.8 属于「糖耐量异常」区间,需要复查而不是立刻吃药。
糖尿病患者每 3 个月复查糖化血红蛋白,上次 7.2%,这次 7.8%,医生说控制变差但没解释差多少。用本工具输入两次数值,自动对比参考范围(<7% 良好,7-8% 一般,>8% 差),量化出「从良好降到一般」的变化幅度,方便跟医生讨论调整方案。
父母都有 2 型糖尿病,自己 40 岁、体重超标,想评估风险。本工具同时输入空腹、餐后、糖化三项,如果空腹正常但餐后偏高,提示「早期糖代谢异常」可能,比只看空腹血糖更早发现问题,促使去做口服葡萄糖耐量试验。
用家用血糖仪每天测空腹和餐后,记录本上数字密密麻麻看不出趋势。本工具提供标准参考范围,每次测完输入数值,立刻标出「正常 / 偏高 / 异常」,连续记录几周后能直观看到哪些生活习惯(如晚餐吃面食)导致血糖波动。
| 维度 | 本工具 | 竞品 A (DiabTrend) | 传统方法 |
|---|---|---|---|
| 数据隐私 | 纯浏览器,零上传 | 上传到服务器 | 依赖工作人员记录 |
| 处理速度 | 1 秒内 | 3-5 秒 | 数分钟至数小时 |
| 离线可用 | 完全离线 | 需联网 | 完全离线 |
| 收费 | 免费 | 免费 | 可能涉及挂号/检测费 |
| 注册 | 无需注册 | 需注册账号 | 需挂号/登记 |
| 结果解释 | 即时显示参考范围 | 显示参考范围+趋势图 | 需医生解读 |
| 平台 | 网页端,无安装 | 网页端+移动端 | 线下医院/诊所 |
上手步骤 · 输入输出 · 避坑提示
| 输入 | 输出 | 说明 |
|---|---|---|
| 空腹血糖 5.6 | 正常范围(3.9–6.1 mmol/L) | 典型常规场景:健康体检常见值 |
| 空腹血糖 7.0 | 偏高(≥7.0 mmol/L 提示糖尿病可能) | 边界 case:刚好达到诊断阈值 |
| 餐后2小时血糖 7.8 | 正常范围(<7.8 mmol/L) | 典型常规场景:餐后血糖正常上限 |
| 餐后2小时血糖 11.1 | 偏高(≥11.1 mmol/L 提示糖尿病可能) | 边界 case:刚好达到餐后诊断阈值 |
| 糖化血红蛋白 6.5% | 偏高(≥6.5% 提示糖尿病可能) | 边界 case:糖化血红蛋白诊断临界值 |
| 糖化血红蛋白 4.0% | 偏低(<4.0% 需警惕低血糖风险) | 易错 case:用户误以为越低越好 |
| 空腹血糖 2.8 | 偏低(<3.9 mmol/L 提示低血糖) | 典型常规场景:严重低血糖需紧急处理 |
| 餐后2小时血糖 3.5 | 偏低(<3.9 mmol/L 提示低血糖) | 易错 case:餐后也可能发生低血糖 |
餐后 2 小时血糖 5.3 mmol/L,对照空腹标准判断为正常餐后 2 小时血糖 5.3 mmol/L,对照餐后标准(<7.8 mmol/L)判断为正常空腹(3.9-6.1)和餐后(<7.8)是两个独立诊断标准,混用会导致误判正常或异常
输入 6.5 mmol/mol 却当作 % 来解读确认工具输入框标注的单位:若为 % 则输入 6.5;若为 mmol/mol 则输入 48(对应 6.5%)HbA1c 有 DCCT(%)和 IFCC(mmol/mol)两种单位,数值相差约 10 倍,选错单位结果完全错误
餐后 30 分钟测出 8.0 mmol/L 就判定为糖尿病餐后血糖标准特指餐后 2 小时(从第一口饭开始计时),30 分钟峰值正常可达 8-10 mmol/L餐后血糖波动有正常生理峰值,诊断标准只针对 2 小时时间点,其他时间点无诊断意义
早上 6 点吃了早餐,8 点测空腹血糖 6.3 mmol/L空腹要求至少 8 小时无热量摄入,测前应禁食 8-12 小时空腹时间不足会导致血糖偏高,产生假阳性结果;严格禁食 8 小时以上才具参考价值
下午 3 点测出 5.8 mmol/L,对照空腹标准认为正常随机血糖参考范围不同(通常 <11.1 mmol/L),不能套用空腹标准随机血糖受最后一餐影响大,空腹标准只适用于禁食 8 小时后,两者参考值不同
某天空腹 6.3 mmol/L,立刻认定自己得了糖尿病单次异常需复查确认,建议不同日期测 2-3 次,结合糖化血红蛋白综合判断血糖受饮食、运动、睡眠、应激等多因素影响,单次异常不能确诊,需连续监测
糖化 7.0 mmol/L 这种写法糖化血红蛋白单位是 % 或 mmol/mol,不是 mmol/L;血糖才是 mmol/L糖化血红蛋白反映 2-3 个月平均血糖,单位与即时血糖完全不同,混用会造成数值误解
公式推导 · 流程图解 · 依据出处
eAG = (FPG + 2hPG) / 3
eAG — 估算平均血糖(mmol/L)FPG — 空腹血糖值(mmol/L)2hPG — 餐后2小时血糖值(mmol/L)空腹血糖 6.1 mmol/L,餐后2小时血糖 8.5 mmol/L。eAG = (6.1 + 8.5) / 3 = 14.6 / 3 ≈ 4.87 mmol/L。该值低于糖化血红蛋白对应的平均血糖估算值(约 7.0 mmol/L),提示血糖波动较大,需结合 HbA1c 综合评估。
适用于空腹和餐后2小时血糖同时可得的成人(非妊娠)。不适用于1型糖尿病、妊娠期糖尿病或已使用胰岛素的患者。数据来源:ADA(美国糖尿病协会)2023 年临床指南,eAG 为 HbA1c 的辅助参考,非诊断标准。
3 种主流语言 · 复制即用
def classify_blood_sugar(fasting_mgdl=None, postprandial_mgdl=None, hba1c_percent=None):
"""根据空腹/餐后血糖/糖化血红蛋白判断血糖状态"""
results = {}
if fasting_mgdl is not None:
if fasting_mgdl < 100:
results['fasting'] = '正常'
elif 100 <= fasting_mgdl < 126:
results['fasting'] = '空腹血糖受损(糖尿病前期)'
else:
results['fasting'] = '糖尿病(需复查确认)'
if postprandial_mgdl is not None:
if postprandial_mgdl < 140:
results['postprandial'] = '正常'
elif 140 <= postprandial_mgdl < 200:
results['postprandial'] = '糖耐量异常(糖尿病前期)'
else:
results['postprandial'] = '糖尿病(需复查确认)'
if hba1c_percent is not None:
if hba1c_percent < 5.7:
results['hba1c'] = '正常'
elif 5.7 <= hba1c_percent < 6.5:
results['hba1c'] = '糖尿病前期'
else:
results['hba1c'] = '糖尿病(需复查确认)'
return results
# 示例:空腹血糖 110 mg/dL,餐后 2h 血糖 160 mg/dL,糖化血红蛋白 6.0%
print(classify_blood_sugar(fasting_mgdl=110, postprandial_mgdl=160, hba1c_percent=6.0))
# 输出: {'fasting': '空腹血糖受损(糖尿病前期)', 'postprandial': '糖耐量异常(糖尿病前期)', 'hba1c': '糖尿病前期'}package main
import "fmt"
// classifyBloodSugar 根据空腹/餐后/糖化血红蛋白判断血糖状态
func classifyBloodSugar(fasting, postprandial *float64, hba1c *float64) map[string]string {
results := make(map[string]string)
if fasting != nil {
switch {
case *fasting < 100:
results["fasting"] = "正常"
case *fasting < 126:
results["fasting"] = "空腹血糖受损(糖尿病前期)"
default:
results["fasting"] = "糖尿病(需复查确认)"
}
}
if postprandial != nil {
switch {
case *postprandial < 140:
results["postprandial"] = "正常"
case *postprandial < 200:
results["postprandial"] = "糖耐量异常(糖尿病前期)"
default:
results["postprandial"] = "糖尿病(需复查确认)"
}
}
if hba1c != nil {
switch {
case *hba1c < 5.7:
results["hba1c"] = "正常"
case *hba1c < 6.5:
results["hba1c"] = "糖尿病前期"
default:
results["hba1c"] = "糖尿病(需复查确认)"
}
}
return results
}
func main() {
fasting := 110.0
postprandial := 160.0
hba1c := 6.0
result := classifyBloodSugar(&fasting, &postprandial, &hba1c)
fmt.Println(result)
// 输出: map[fasting:空腹血糖受损(糖尿病前期) hba1c:糖尿病前期 postprandial:糖耐量异常(糖尿病前期)]
}function classifyBloodSugar({ fastingMgdl, postprandialMgdl, hba1cPercent } = {}) {
const results = {};
if (fastingMgdl !== undefined) {
if (fastingMgdl < 100) {
results.fasting = '正常';
} else if (fastingMgdl < 126) {
results.fasting = '空腹血糖受损(糖尿病前期)';
} else {
results.fasting = '糖尿病(需复查确认)';
}
}
if (postprandialMgdl !== undefined) {
if (postprandialMgdl < 140) {
results.postprandial = '正常';
} else if (postprandialMgdl < 200) {
results.postprandial = '糖耐量异常(糖尿病前期)';
} else {
results.postprandial = '糖尿病(需复查确认)';
}
}
if (hba1cPercent !== undefined) {
if (hba1cPercent < 5.7) {
results.hba1c = '正常';
} else if (hba1cPercent < 6.5) {
results.hba1c = '糖尿病前期';
} else {
results.hba1c = '糖尿病(需复查确认)';
}
}
return results;
}
// 示例:空腹血糖 110 mg/dL,餐后 2h 血糖 160 mg/dL,糖化血红蛋白 6.0%
console.log(classifyBloodSugar({ fastingMgdl: 110, postprandialMgdl: 160, hba1cPercent: 6.0 }));
// 输出: { fasting: '空腹血糖受损(糖尿病前期)', postprandial: '糖耐量异常(糖尿病前期)', hba1c: '糖尿病前期' }8 个高频疑问