De lo contrario, si la estructura da un resultado incorrecto. Reemplacé el anterior else if y funcionó, pero esta vez el siguiente código dio un error.
const gelir_vergisi = { gelir: function() { matrah = ((document.getElementById("a_sayisi").value) - sgk.vtoplam()); if (matrah <= (document.getElementById("gelir1").value)) { gv1 = (matrah * 15) / 100; return gv1; } else if ((document.getElementById("gelir1").value) < matrah <= (document.getElementById("gelir2").value)) { bir = ((document.getElementById("gelir1").value) * 15) / 100; iki = ((matrah - (document.getElementById("gelir1").value)) * 20) / 100; gv2 = bir + iki; return gv2; } else if ((document.getElementById("gelir2").value) < matrah <= (document.getElementById("gelir3").value)) { ilk_dilim = ((document.getElementById("gelir1").value) * 15) / 100; ikinci_dilim = (((document.getElementById("gelir2").value) - (document.getElementById("gelir1").value)) * 20) / 100; ucuncu_dilim = ((matrah - (document.getElementById("gelir2").value)) * 27) / 100; gv = ilk_dilim + ikinci_dilim; gv3 = gv + ucuncu_dilim; return gv3; } } }Puede usar el plus unario para convertir a número, suponiendo que todos los campos contengan números; de lo contrario, use isNaN para probar
Entonces puedes hacer que todo sea MUCHO más legible
Es posible que haya ingresado mal algunos corchetes, pero aquí hay un intento
NOTA: No es necesario tener más después de una devolución
const gelir_vergisi = { gelir: function() { let a_sayisi = +document.getElementById("a_sayisi").value; let gelir1 = +document.getElementById("gelir1").value; let gelir2 = +document.getElementById("gelir2").value; let gelir3 = +document.getElementById("gelir3").value; const matrah = a_sayisi - sgk.vtoplam(); if (matrah <= gelir1) return (matrah * 15) / 100; if (gelir1 < matrah && matrah <= gelir2) { let bir = (gelir1 * 15) / 100; let iki = ((matrah - gelir1) * 20) / 100; return bir + iki; } if (gelir2 < matrah && matrah <= gelir3) { let ilk_dilim = (gelir1 * 15) / 100; let ikinci_dilim = ((gelir2 - gelir1) * 20) / 100; let ucuncu_dilim = ((matrah - gelir2) * 27) / 100; let gv = ilk_dilim + ikinci_dilim; return gv + ucuncu_dilim; } return 0; // or something else that makes sense } }