JavaScript中的温度转换器(IF ELSE条件)
Temperature Converter (IF ELSE conditions) in JavaScript
我正在用JavaScript创建一个温度转换器。到目前为止,只有当用户首先输入摄氏度时,摄氏度转换才起作用。我只是很难弄清楚如何构建其他if语句。
var conversionC;
var conversionF;
var conversionK;
if ( celsius.value != "" ) {
conversionF = document.getElementById("celsius").value * 9 / 5 + 32;
document.getElementById("fahrenheit").value = Math.round(conversionF);
}
else if ( fahrenheit.value != "" ){
conversionC = (document.getElementById("fahrenheit").value - 32) * 5 / 9;
document.getElementById("celsius").value = Math.round(conversionC);
}
if ( kelvin.value != "" ){
conversionC = document.getElementById("celsius").value - -273;
document.getElementById("kelvin").value = Math.round(conversionC);
}
我只想保留我现有的一个转换按钮,当用户决定首先输入华氏温度或开尔文时,它仍然可以工作。
非常感谢您的指导!
以下是迄今为止我的程序的JSFiddle:https://jsfiddle.net/2sharkp/kw2sr1wx/
谢谢!
在您的JSFiddle中,您将获取每个值,并使用parseFloat
将其转换为浮点值。
这意味着当您点击if ( celsius.value != "" )
时,您正在呼叫一个号码.value
,即undefined
。所以您实际上是在调用if ( undefined != "" )
,这是真的,并且您的第一个if
块将始终执行。
我假设您的意图是使用最近编辑的字段并将其用于转换。我建议使用标志来指示上次编辑的字段。
https://jsfiddle.net/camEdwards/chyg4ws1/
<script>
let cels = document.getElementById('cels');
let fahr = document.getElementById('fahr');
cels.addEventListener('input', function(){
let f = (this.value * 9/5) +32;
if(!Number.isInteger){
return f.toFixed(2);
}
fahr.value = f;
});
fahr.addEventListener('input', function(){
let c = (this.value - 32) * 5/9;
if(!Number.isInteger){
return c.toFixed(2);
}
cels.value = c;
});
</script>
相关文章:
- 如何在ReactJS JSX中执行嵌套的if-else语句
- Javascript Return and if/else
- JavaScript if-else 速记错误
- 如何检查if/else语句中的随机条件
- 在javascript中创建数组,而不是if.else
- Javascript If else 只返回 TRUE 或只返回 FALSE
- jquery if else不返回警报消息
- 在Javascript中为if/else语句添加OR
- If Else Java Script HTML
- jQuery/Javascript foreach If/Else |如果为空(不执行任何操作)Else(显示forea
- 我应该如何应用if-else条件来向具有不同用户角色的人显示不同的菜单
- geoTest函数-创建if/else语句
- JavaScript中的温度转换器(IF ELSE条件)
- Jquery/Javascript使用IF/ELSE语句更改img SRC
- 编写if-else语句的更好方法
- 在if/else语句中显示DIV
- PHP If Else-隐藏按钮
- JavaScript if/else未按预期操作
- if/else运算符未更改
- 名称不能以''jquery-if-else条件中的字符