¿Hay algo así como isset de php en javascript / jQuery?

¿Hay algo en javascript / jQuery para verificar si la variable está configurada / disponible o no? En php, utilizamos isset($variable) para verificar algo como esto.

Gracias.

11 Solutions collect form web for “¿Hay algo así como isset de php en javascript / jQuery?”

Prueba esta expresión:

 typeof(variable) != "undefined" && variable !== null 

Esto será cierto si la variable está definida y no es nula, que es el equivalente de cómo funciona isset de PHP.

Puedes usarlo así:

 if(typeof(variable) != "undefined" && variable !== null) { bla(); } 

JavaScript isset () en PHP JS

 function isset () { // discuss at: http://phpjs.org/functions/isset // + original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net) // + improved by: FremyCompany // + improved by: Onno Marsman // + improved by: Rafał Kukawski // * example 1: isset( undefined, true); // * returns 1: false // * example 2: isset( 'Kevin van Zonneveld' ); // * returns 2: true var a = arguments, l = a.length, i = 0, undef; if (l === 0) { throw new Error('Empty isset'); } while (i !== l) { if (a[i] === undef || a[i] === null) { return false; } i++; } return true; } 

typeof servirá el propósito, creo

 if(typeof foo != "undefined"){} 

Si desea verificar si existe una propiedad: hasOwnProperty es el path a seguir

Y dado que la mayoría de los objects son properties de algún otro object (que eventualmente conduce al object window ) esto puede funcionar bien para verificar si los valores han sido declarados.

No es natural, no … Sin embargo, una búsqueda en Google de la cosa dio esto: http://phpjs.org/functions/isset:454

http://phpjs.org/functions/isset:454

El proyecto phpjs es una fuente confiable. Un montón de js equivalentes funciones de php disponibles allí. He estado usando desde hace mucho time y no encontré problemas hasta el momento.

El problema es que pasar una variable indefinida a una function provoca un error.

Esto significa que debe ejecutar typeof antes de pasarlo como argumento.

La forma más limpia que encontré para hacer esto es así:

 function isset(v){ if(v === 'undefined'){ return false; } return true; } 

Uso:

 if(isset(typeof(varname))){ alert('is set'); } else { alert('not set'); } 

Ahora el código es mucho más compacto y legible.

Esto todavía dará un error si intenta llamar a una variable desde una variable no instanciada como:

 isset(typeof(undefVar.subkey)) 

por lo tanto, antes de intentar ejecutar esto, debe asegurarse de que el object esté definido:

 undefVar = isset(typeof(undefVar))?undefVar:{}; 

Aquí 🙂

 function isSet(iVal){ return (iVal!=="" && iVal!=null && iVal!==undefined && typeof(iVal) != "undefined") ? 1 : 0; } // Returns 1 if set, 0 false 

además de la respuesta de @emil-vikström , ¡verificar la variable!=null sería cierto para la variable!==null así como para la variable!==undefined (o typeof(variable)!="undefined" ).

Algunas partes de cada una de estas respuestas funcionan. Los compilé todos en una function "isset" tal como lo hacía la pregunta y funciona como lo hace en PHP.

 // isset helper function var isset = function(variable){ return typeof(variable) !== "undefined" && variable !== null && variable !== ''; } 

Aquí hay un ejemplo de uso de cómo usarlo:

 var example = 'this is an example'; if(isset(example)){ console.log('the example variable has a value set'); } 

Depende de la situación en que lo necesite, pero permítame desglosar lo que hace cada parte:

  1. typeof(variable) !== "undefined" comtesting si la variable está definida en absoluto
  2. variable !== null comtesting si la variable es nula (algunas personas establecen explícitamente nulo y no piensan si se establece en nulo que eso es correcto, en ese caso, elimine esta parte)
  3. variable !== '' comtesting si la variable está configurada en una cadena vacía, puede eliminarla si una cadena vacía count como se establece para su caso de uso

Espero que esto ayude a alguien 🙂

Tu puedes sólo:

 if(variable||variable===0){ //Yes it is set //do something } else { //No it is not set //Or its null //do something else } 
  • ¿Mejores prácticas para get respuestas JSON entre sitios a POST?
  • ¿Existe un código de código abierto para crear text e icons de "vista previa del enlace", como en Facebook?
  • cómo reproducir música en segundo plano en las páginas
  • Pasar JSON de php a javascript
  • javascript de ajax no obtiene la ejecución adecuada
  • Solicitud de Jquery ajax que muestra una respuesta anterior
  • Cambiar el contenido entre un DIV todos los días
  • Html2canvas: comentarios de plugin de facebook
  • Pasar javascript variable al código php?
  • Use javascript para actualizar un file json
  • Firefox tiene "#;" en la barra de direcciones
  • ¿Ya son prácticos los sistemas operativos web?
  • Sincronización de sesiones PHP
  • Javascript tiene muchos buenos JS marco (como Node.js AngularJS Vue.js React.js) es el mejor lenguaje de script.