当前位置:首页 > JavaScript

js实现Bmi计算

2026-02-02 21:42:50JavaScript

以下是用JavaScript实现BMI计算的几种方法:

基础计算函数

function calculateBMI(weight, height) {
    const bmi = weight / (height * height);
    return bmi.toFixed(2);
}

完整BMI计算器(带分类)

function getBMICategory(bmi) {
    if (bmi < 18.5) return 'Underweight';
    if (bmi < 25) return 'Normal weight';
    if (bmi < 30) return 'Overweight';
    return 'Obese';
}

function fullBMICalculator(weightKg, heightM) {
    const bmi = calculateBMI(weightKg, heightM);
    const category = getBMICategory(bmi);
    return { bmi, category };
}

带单位转换的计算器

function calculateBMIWithUnits(weight, height, unitSystem = 'metric') {
    let weightKg = weight;
    let heightM = height;

    if (unitSystem === 'imperial') {
        weightKg = weight * 0.453592;  // 磅转千克
        heightM = height * 0.0254;    // 英寸转米
    }

    return calculateBMI(weightKg, heightM);
}

HTML页面集成示例

<!DOCTYPE html>
<html>
<head>
    <title>BMI Calculator</title>
</head>
<body>
    <div>
        <label>Weight (kg): <input type="number" id="weight"></label>
        <label>Height (m): <input type="number" id="height"></label>
        <button onclick="calculate()">Calculate BMI</button>
        <div id="result"></div>
    </div>

    <script>
        function calculate() {
            const weight = parseFloat(document.getElementById('weight').value);
            const height = parseFloat(document.getElementById('height').value);
            const result = fullBMICalculator(weight, height);
            document.getElementById('result').innerHTML = 
                `BMI: ${result.bmi} (${result.category})`;
        }
    </script>
</body>
</html>

使用时需要注意:

  • 体重单位应为千克(kg)
  • 身高单位应为米(m)
  • 对于英制单位需要先进行转换
  • BMI计算公式为:体重(kg)除以身高(m)的平方

BMI分类标准:

js实现Bmi计算

  • 低于18.5:偏瘦
  • 18.5-24.9:正常
  • 25-29.9:超重
  • 30及以上:肥胖

标签: jsBmi
分享给朋友:

相关文章

js实现验证码

js实现验证码

使用Canvas生成图形验证码 在HTML中创建一个Canvas元素用于绘制验证码。通过JavaScript随机生成数字或字母组合,并添加干扰线、噪点等干扰元素增强安全性。 <canvas i…

js 进度条的实现

js 进度条的实现

使用 HTML 和 CSS 创建基础进度条 HTML 结构可以简单使用一个 div 元素作为容器,内部嵌套另一个 div 表示进度: <div class="progress-containe…

js如何实现继承

js如何实现继承

原型链继承 通过将子类的原型指向父类的实例实现继承。子类实例能够访问父类原型上的属性和方法。 function Parent() { this.name = 'parent'; } Parent…

js实现图片放大缩小

js实现图片放大缩小

实现图片放大缩小的基础方法 使用CSS的transform: scale()属性可以快速实现图片的放大缩小效果。通过JavaScript动态修改该属性值: const img = document.…

利用js实现

利用js实现

使用 JavaScript 实现 在 JavaScript 中,可以通过多种方式实现功能,具体取决于需求。以下是几种常见的方法: 方法一:使用原生 JavaScript // 示例代码…

vue实现js休眠

vue实现js休眠

实现 JavaScript 休眠的方法 在 Vue 中实现 JavaScript 休眠(延迟执行)可以通过以下方式实现。由于 JavaScript 本身没有内置的 sleep 函数,通常使用 Prom…