Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

294
Vistas
Operador ternario: cuando la variable no está definida

Tengo un fn que crea y completa la variable linkedinInsight cuando se invoca.

Solo una descripción general rápida de este fn, verificará los datos de respuesta y verá si hay una coincidencia. En caso afirmativo, completaría la variable linkedinInight con los datos.

Usando la operación ternaria, no puedo mostrar "indefinido" cuando la variable no está definida. linkedinInsight === undefined ? "undefined" : "Variable exist"

Sin embargo, si fn obtiene una coincidencia, podría ver que se muestra "Variable exist" .

En el caso de que la variable no esté undefined , desde la consola, se muestra

 Error handling response: TypeError: Cannot read properties of undefined (reading 'insight_tags') at chrome-extension://fpncfpgjnkfnlafmojhhpgophpgikaao/popup.js:13:60

El objetivo aquí es presentar los datos y si no pudimos encontrar datos, me gustaría devolver un "Mensaje de datos no encontrados".

¿Alguna ayuda chicos?

 document.addEventListener( "DOMContentLoaded", function () { var checkPageButton = document.getElementById("clickIt"); checkPageButton.addEventListener( "click", function () { chrome.tabs.getSelected(null, function (tab) { const backgroundPage = chrome.extension.getBackgroundPage(); const linkedinInsight = backgroundPage["_linkedin_pixel_data"][tab.id].insight_tags; alert( linkedinInsight === undefined ? "undefined" : "Variable exist" );
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

El problema está en la línea de abajo, reemplace

 const linkedinInsight = backgroundPage["_linkedin_pixel_data"][tab.id].insight_tags;

con

 const linkedinInsight = (backgroundPage && backgroundPage["_linkedin_pixel_data"] && backgroundPage["_linkedin_pixel_data"][tab.id] && backgroundPage["_linkedin_pixel_data"][tab.id].insight_tags) || undefined;

O si se admite el encadenamiento opcional

 const linkedinInsight = backgroundPage?.["_linkedin_pixel_data"]?.[tab.id]?.insight_tags;
about 4 years ago · Juan Pablo Isaza Denunciar

0

Usar un operador coalescente nulo

 let exists = value ?? `${value} doesn't exist`;

Si el value no está undefined o es null , devuelva el valor en el lado derecho del operador ??

 function check(X) { let present = X ?? `"X" does not exist`; let limit = X < 10 && X > 0 ? `"X" is within range` : `"X" is out of range`; if (typeof present == 'string') { console.log(present); return; } console.log(limit); } check(5); check(10); check(-1); check(); check(null);

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda