A continuación puede ver el código que escribí para calcular un área (P) y una circunferencia (O) de 3 formas geométricas enumeradas. El problema que encuentro es que cuando calcula la circunferencia agrega cadenas, pero quiero que las agregue como números. Se agradece cualquier ayuda para resolver este problema, también puede comentar cualquier parte del código que hubiera hecho diferente. Gracias por adelantado. :)
else if (x == 3) { if (p3.value.length == 0) { let a2 = p1.value; let b2 = p2.value; let c2 = Math.sqrt(a2 * a2 + b2 * b2); c2 = c2.toFixed(4); let P33 = a2 * b2 / 2; let O33 = a2 + b2 + c2; document.getElementById("rezultat").innerHTML = "P = " + P33 + "<br> O= " + O33; p3.value = c2; } else if (p2.value.length == 0) { let a2 = p1.value; let c2 = p3.value; let b2 = Math.sqrt(a2 * a2 + c2 * c2); b2 = b2.toFixed(4); let P32 = a2 * b2 / 2; let O32 = a2 + b2 + c2; document.getElementById("rezultat").innerHTML = "P = " + P32 + "<br> O= " + O32; p2.value = b2; } else if (p1.value.length == 0) { let b2 = p2.value; let c2 = p3.value; let a2 = Math.sqrt(b2 * b2 + c2 * c2); a2 = a2.toFixed(4); let P31 = a2 * b2 / 2; let O31 = a2 + b2 + c2; document.getElementById("rezultat").innerHTML = "P = " + P31 + "<br> O= " + O31; p1.value = a2; }Puede usar la parseInt() o Number() . La parseInt() analiza un argumento de cadena y devuelve un número entero. Todo lo que tiene que hacer es pasar los valores que obtiene de su elemento HTML. Pero si analiza el número decimal, se redondeará al valor entero más cercano. Por ejemplo:
let a2 = parseInt(p1.value); Si también quieres decimales, puedes usar Number
let a2 = Number(p1.value);Utilice Number() para convertir cadenas en números. Ejemplo:
let a2 = Number(p1.value); let b2 = Number(p2.value);Puede usar el método Number() para convertir todos sus valores de cadena en números y hacer sus operaciones matemáticas con él. Tener esto convertido solo a números enteros con el método parseInt no es del todo conveniente en este caso, ya que también puede tener números decimales.
Eche un vistazo a la documentación del método Number() aquí. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/Number
¡Salud!