不会转换温度
问题描述:
我正在研究一种从摄氏到华氏,从华氏到摄氏的简单转换形式。我无法弄清楚它为什么不转换。不会转换温度
HTML
<head>
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<form name="tempForm">
<label for="temp">Temperature:</label>
<input type="text" id="temp"><br>
<input type="radio" name="choice" value="fahrenheit" checked />Convert to Fahrenheit <br>
<input type="radio" name="choice" value="celsius">Convert to Celsius <br>
<label for="resultField">Result: </label>
<input type="text" id="resultField"><br>
<input type="button" value="Convert" onclick="processForm()">
</form>
</body>
的Javascript 功能processForm(){
var temperature = Number(document.tempForm.temp.value);
var tempType;
var result;
for (var i=0; i < document.tempForm.choice.length; i++) {
if (document.tempForm.choice[i].checked) {
tempType = document.tempForm.choice[i].value;
}
}
if (tempType == 'fahrenheit') {
result = temperature * 9/5 + 32;
}
else {
result = (temperature - 32) * 5/9;
}
// Assign the result field value here
result = document.tempForm.resultField.value;
}
答
您分配结果的错走在左右结束。你必须把对assingment的lefthandside分配的目标,因此你resultfield并希望将其分配到,像这样的值的右手边:
document.tempForm.resultField.value = result;
答
你的转换工作,但要指定resultField
的结果是错误的。
转换分配(最后一个)这样
document.tempForm.resultField.value = result;
答
参考:w3resource
这里是HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Write a JavaScript program to convert temperatures to and from celsius, fahrenheit</title>
</head>
<body>
</body>
</html>
下面是JavaScript的
function cToF(celsius)
{
var cTemp = celsius;
var cToFahr = cTemp * 9/5 + 32;
var message = cTemp+'\xB0C is ' + cToFahr + ' \xB0F.';
console.log(message);
}
function fToC(fahrenheit)
{
var fTemp = fahrenheit;
var fToCel = (fTemp - 32) * 5/9;
var message = fTemp+'\xB0F is ' + fToCel + '\xB0C.';
console.log(message);
}
cToF(60);
fToC(45);
ES6版本
function cToF(celsius)
{
const cTemp = celsius;
const cToFahr = cTemp * 9/5 + 32;
const message = `${cTemp}\xB0C is ${cToFahr} \xB0F.`;
console.log(message);
}
function fToC(fahrenheit)
{
const fTemp = fahrenheit;
const fToCel = (fTemp - 32) * 5/9;
const message = `${fTemp}\xB0F is ${fToCel}\xB0C.`;
console.log(message);
}
cToF(60);
fToC(45);