var costo = función () {
if (x.value == "1") { .... } else if (x.value == ""){ I want my program to stop the execution of any further code here if x.value = empty or null } };Traté de devolver falso aquí.
var cost = function () { if(!x) return; // do rest of stuff that is necessary if x isn't null | empty };Para detener la ejecución de la función, simplemente regrese
if (x.value == "1") { ... } else if (!x.value){ return; } };Un alcance cerrado de funcionalidad debe encerrarse en una función, para controlarlo de la manera que desee.
Cuando está dentro de una función, puede decidir cuándo termina el programa usando la palabra retorno.
La palabra clave "return" generalmente se usa para hacer que su función devuelva algo a la persona que llama, pero eso no es obligatorio, por lo que usarla sola, sin que se devuelva algo específico, está bien.
var cost = function (someParameter) { if (someParameter==='some value') { return; // It's returning 'undefined' here, and the function is stopping } const a = 1; const b = 1; return a + b; };No, es importante tener en cuenta que, a excepción de un programa Javascript impulsado por NodeJS, no puede detener todo el javascript fuera del alcance de la función.
Javascript, como muchos lenguajes, se basa en niveles de alcance, lo que significa que solo puede controlar lo que está dentro de su alcance, no lo que está fuera.
Si necesita que la lógica fuera de esa función se detenga, también debe tener otro ámbito de función detrás.
Ejemplo:
const functionA = function(paramX){ if(paramX==='foo'){ return true; } else { return false; } // this whole thing could be a ternary, though like: // return paramX==='foo' } // This one is the one that has the most upper level in the scope chain const functionB = function(){ let a = 1, b = 2, c = 3; // Negating the function return // so if the functionA returns false, // my functionB won't continue execution if(!functionA(a+b+c===5)){ return; } // Now your code can continue to it's purpose because // functionA returned true // ... }