J'essaie d'ajouter une fonction à ce code de conversion à Kelvin, il semble que je ne puisse pas le faire. Le Celsius à Fahrenheit fonctionne bien, je pensais commencer à être simple, précisez simplement le Fahrenheit à Kelvin.
p>
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Celcius to Fahrenhet</h2>
<p>Insert a number into one of the input fields below:</p>
<p><input id="c" onkeyup="convert('C')"> degrees Celsius</p>
<p><input id="f" onkeyup="convert('F')"> degrees Fahrenheit</p>
<p><input id="k" onkeyup="convert('K')"> degrees Kelvin</p>
<p>Note that the <b>Math.round()</b> method is used, so that the result will be returned as an integer.</p>
</body>
</html>4 Réponses :
Votre structure if / sinon est fausse, il faut ressembler à ce problème: Cependant, avec la façon dont vous avez écrit cette fonction, si vous tapez quelque chose dans l'entrée Celsius, elle Montrez-vous son équivalent Fahrenheit et vice versa mais il ne mettra pas également à jour l'entrée Kelvin. De plus, en tapant sur l'entrée de Kelvin avant d'avoir quelque chose sur l'entrée Fahrenheit ne fonctionnera pas correctement car il utilisera une valeur vide Ceci pourrait Soyez l'une des solutions possibles: p> p> "" " code> pour le calcul. P> "2" + 1
// "21"
Ces entrées ont besoin de types.
Même si vous ajoutez type = "numéro" code> aux entrées, leurs valeurs seront toujours une chaîne, regardez ceci Exemple .
Une entrée doit avoir un type.
Pas vraiment. Si l'attribut de type n'est pas présent ou si elle contient une valeur non valide, celle-ci sera simplement par défaut sur le type de texte.
Votre if-ele em> la structure n'est pas syntaxiquement correcte. Vous ne pouvez pas avoir Vous avez: P> si code> sans condition. En outre, vous ne pouvez pas avoir un autre sinon code> après un bloc code> autre code>. Vous devez utiliser sinon si (quelque chose) code> sur tous les blocs sauf le dernier, qui peut être juste sinon code>. if (degree == "C") {
// handle C here
} else if (degree == "F") {
// handle F here
} else if (degree == "K") {
// handle K here
} else {
// throw exception here because of an unsupported value for `degree`
}
Vous n'avez pas spécifié Quoi que j'ai fait: p> Il vous suffit de mettre à jour les valeurs de la conversion car je ne connais pas les maths derrière elle. P> Il devrait être comme ceci: p> P> si code> condition. Vous venez de sauter à sinon code>, puis sinon si code> sans condition. De plus, dans votre code d'origine, vous ne mettez pas à jour tous les champs, vous ne faites que mettre à jour C code> et f code>.
si-ele code> structure. li>
<!DOCTYPE html>
<html>
<body>
<h2>JavaScript Celcius to Fahrenhet</h2>
<p>Insert a number into one of the input fields below:</p>
<p><input id="c" onkeyup="convert('C')"> degrees Celsius</p>
<p><input id="f" onkeyup="convert('F')"> degrees Fahrenheit</p>
<p><input id="k" onkeyup="convert('K')"> degrees Kelvin</p>
<p>Note that the <b>Math.round()</b> method is used, so that the result will be returned as an integer.</p>
</body>
</html>
Vous pouvez utiliser un boîtier de commutation pour éviter plusieurs si / autres. Le code sera également meilleur et moins déroutant si vous évitez plusieurs variables k, k, c, c, f, f code>. Les noms de variables descriptifs sont toujours meilleurs. Donnez un type à vos entrées. <!DOCTYPE html>
<html>
<body>
<h2>JavaScript Celcius to Fahrenhet</h2>
<p>Insert a number into one of the input fields below:</p>
<p><input type="number" id="celcius" onkeyup="convert('celcius')"> degrees Celsius</p>
<p><input type="number" id="fahrenheit" onkeyup="convert('fahrenheit')"> degrees Fahrenheit</p>
<p><input type="number" id="kelvin" onkeyup="convert('kelvin')"> degrees Kelvin</p>
<p>Note that the <b>Math.round()</b> method is used, so that the result will be returned as an integer.</p>
</body>
</html>
votre structure if / sinon devrait être: si / sinon si / sinon
Donnez à vos entrées un type, code>