Tener problemas para obtener un bloque de código para iniciar sesión en la consola
No funciona. No se registra nada en la consola.
var data = {"_id": "615fc3db8b6a6311aa3295ca", "isComplete": false, "remindTime": {"date": "2021-10-08", "time": "12:08:40 am"}, "subtitle": "Fdfdff", "title": "Dfdf"} if (data.length > 0) { console.log('my data', data); }QUE FUNCIONA:
var data = {"_id": "615fc3db8b6a6311aa3295ca", "isComplete": false, "remindTime": {"date": "2021-10-08", "time": "12:08:40 am"}, "subtitle": "Fdfdff", "title": "Dfdf"} if (data.title) { console.log('my data', data); }No estoy seguro de lo que va mal
Está probando una propiedad de longitud en un objeto js simple en el que no ha colocado explícitamente una propiedad de longitud.
La prueba de una longitud parece que espera que sea una matriz.
Sería similar a ejecutar esto en la consola, obtendrá indefinido.
({}).length
Si desea registrarlo si es un objeto:
if (data) { console.log('my data', data); }Si desea registrarlo si tiene alguna propiedad:
if (Object.keys(data).length) { console.log('my data', data); }en su caso, data no son una matriz, son un objeto. Tienes que usar Object.keys(data).length para encontrar ninguna clave en un objeto. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys
El objeto no tiene ninguna propiedad de longitud. Si desea verificar la existencia del objeto, simplemente escriba esto:
if (data) { // executable code }comprobará si el objeto tiene alguna propiedad o no.