javascript - javascript的基本条件
问题描述
我正在尝试制作一个 IMC 计算器,根据您的 IMC 值显示警报。但是,当我尝试根据身体状态为显示警报设置条件时,它并没有出现
var k =
{ nombre : 'Antonio'
, peso : 85
, altura : 1.80
, masacorporal : function ()
{
var r = this.peso / (this.altura*this.altura);
return Math.round(r*100)/100;
}
}
function f()
{
k.peso = document.getElementById("dato1").value;
k.altura = document.getElementById("dato2").value;
document.getElementById("resultado").innerHTML = k.masacorporal();
var error = 0;
if (k.peso == '' && error == 0)
{
alert("El valor del peso es obligatorio");
k.peso.focus();
error=1;
}
if (k.altura=='' && error==0)
{
alert("El valor de la altura es obligatorio");
k.altura.focus();
error=1;
}
if (!/^([0-9])*$/.test(k.peso))
{
alert("El valor " + k.peso + " no es un número");
m1.focus();
error=1;
}
if (error==0)
{
f()
}
}
function m()
{
if (k.masacorporal < 18.5)
{
alert("Bad healt status");
}
}
PESO (kg): <input type="text" id="dato1" onkeypress=""/>
<br/>
Altura (metros): <input type="text" id="dato2"/>
<br/>
<input type="button" value="Calcular" onclick="f()"/>
<br/>
IMC:<span id="resultado"> </span>
如果你想尝试的话,这就是完整的代码,对我来说,即使我已经更正了最后一部分,警报也不会显示
解决方案
您正在尝试直接访问对象内部的方法。您应该在方法之前添加对象名称。
function m() {
if (k.masacorporal < 18.5){alert("Bad healt status");}
}
推荐阅读
- c# - 从 dockerfile 引用父文件
- linux - 在网络服务器上的所有文件中查找字符串“/.env”
- ansible - Ansible 不返回异步任务的作业 ID
- java - 使用年份和不同的亚秒位数解析 LocalDateTime
- c++ - 将 shared_ptr 用于不透明类型时的非虚拟析构函数
- javascript - kaboom.js 加载图片失败
- php - Guzzle - cURL 错误 18:传输已关闭,剩余未完成的读取数据
- python - 如何替换python中字符串列表中的子字符串?
- javascript - NPM 在 geo-three.js 的 geo-viewer 示例上的 es-pack-js 安装后脚本失败
- pyarrow - 你如何在pyarrow中设置existing_data_behavior?