Estaba trabajando en un comando simple que verifica si hay datos específicos en la tabla MySql. Primero, probé console.log(result) :
const checksql = "SELECT * FROM web_editor_data where name='somename'"; connection.query(checksql, (err, result, fields) => { console.log(checksql); } Se registró [] .
Por lo tanto, probé:
const checksql = "SELECT * FROM web_editor_data where name='somename'"; connection.query(checksql, (err, result, fields) => { console.log(checksql == []); } Sin embargo, registró false .
¿Hay algo mal con mi código? ¿O hay una alternativa más efectiva para esto?
Gracias por adelantado.
checksql == []Esta es una gran suposición, desafortunadamente en Javascript cuando se comparan matrices y objetos, no se comparan por valor (lo que contienen), pero si son literalmente lo mismo.
Entonces checksql solo es idéntico a checksql , por lo que esto no funciona. [] es una matriz diferente, y si agrega un elemento a [] , no se agrega automáticamente a checksql también.
La forma típica de ver si algo está vacío es contando la cantidad de artículos.
Puedes hacer esto con la propiedad de longitud:
checksql.length === 0; // If true, array is empty