Comprobar si una array está vacía o no en JavaScript

Método 1: usar el método Array.isArray() y la propiedad array.length: se puede verificar si la array es realmente una array y si existe mediante el método Array.isArray(). Este método devuelve verdadero si el objeto pasado como parámetro es una array. También verifica el caso si la array no está definida o es nula.

La array se puede verificar si está vacía usando la propiedad array.length. Esta propiedad devuelve el número de elementos de la array. Si el número es mayor que 0, se evalúa como verdadero.
Este método y esta propiedad se pueden usar junto con el operador AND(&&) para determinar si la array existe y no está vacía.

Sintaxis:

Array.isArray(emptyArray) && emptyArray.length

Ejemplo:

<!DOCTYPE html>
<html>
  
<head>
    <title>
        Check if an array is empty or exists
    </title>
</head>
  
<body>
    <h1 style="color: green">
        GeeksforGeeks
    </h1>
      
    <b>
        Check if an array is empty or exists
    </b>
      
    <p>
        Click on the button to check if 
        array exists and is not empty
    </p>
      
    <p>emptyArray = []</p>
    <p>nonExistantArray = undefined</p>
    <p>fineArray = [1, 2, 3, 4, 5]</p>
      
    <p>
        Output for emptyArray: 
        <span class="output-empty"></span>
    </p>
      
    <p>
        Output for nonExistantArray: 
        <span class="output-non"></span>
    </p>
      
    <p>
        Output for fineArray: 
        <span class="output-ok"></span>
    </p>
  
    <button onclick="checkArray()">
        Check Array
    </button>
      
    <script type="text/javascript">
  
        function checkArray() {
            let emptyArray = [];
            let nonExistantArray = undefined;
            let fineArray = [1, 2, 3, 4, 5];
  
            if (Array.isArray(emptyArray) && emptyArray.length)
                output = true;
            else
                output = false;
  
            document.querySelector('.output-empty').textContent = output;
  
            if (Array.isArray(nonExistantArray) && nonExistantArray.length)
                output = true;
            else
                output = false;
  
            document.querySelector('.output-non').textContent = output;
  
            if (Array.isArray(fineArray) && fineArray.length)
                output = true;
            else
                output = false;
  
            document.querySelector('.output-ok').textContent = output;
        }
    </script>
</body>
  
</html>                    

Producción:

  • Antes de hacer clic en el botón:
    es6-before
  • Después de hacer clic en el botón:
    es6-after

Método 2: Comprobación del tipo y la longitud de la array: la array se puede comprobar si existe comprobando si el tipo de la array es ‘indefinido’ con el operador typeof. La array también se comprueba si es ‘nula’. Estas dos cosas verifican que la array existe.

La array se puede verificar si está vacía usando la propiedad array.length. Al verificar si la propiedad existe, puede asegurarse de que sea una array, y al verificar si la longitud devuelta es mayor que 0, puede asegurarse de que la array no esté vacía.

Estas propiedades se pueden usar junto con el operador AND(&&) para determinar si la array existe y no está vacía.

Sintaxis:

typeof emptyArray != "undefined" && emptyArray != null && emptyArray.length != null
&& emptyArray.length > 0

Ejemplo:

<!DOCTYPE html>
<html>
      
<head>
    <title>
        Check if an array is
        empty or exists
    </title>
</head>
  
<body>
    <h1 style="color: green">
        GeeksforGeeks
    </h1>
      
    <b>
        Check if an array is
        empty or exists
    </b>
      
    <p>
        Click on the button to check if 
        array exists and is not empty
    </p>
      
    <p>emptyArray = []</p>
    <p>nonExistantArray = undefined</p>
    <p>fineArray = [1, 2, 3, 4, 5]</p>
      
    <p>Output for emptyArray: 
    <span class="output-empty"></span>
    </p>
      
    <p>
        Output for nonExistantArray: 
        <span class="output-non"></span>
    </p>
      
    <p>
        Output for fineArray: 
        <span class="output-ok"></span>
    </p>
  
    <button onclick="checkArray()">
        Check Array
    </button>
      
    <script type="text/javascript">
  
        function checkArray() {
            let emptyArray = [];
            let nonExistantArray = undefined;
            let fineArray = [1, 2, 3, 4, 5];
  
            if (typeof emptyArray != "undefined" 
                        && emptyArray != null 
                        && emptyArray.length != null 
                        && emptyArray.length > 0)
                output = true;
            else
                output = false;
  
            document.querySelector('.output-empty').textContent
                    = output;
  
            if (typeof nonExistantArray != "undefined" 
                        && nonExistantArray != null 
                        && nonExistantArray.length != null 
                        && nonExistantArray.length > 0)
                output = true;
            else
                output = false;
  
            document.querySelector('.output-non').textContent
                    = output;
  
            if (typeof fineArray != "undefined" 
                        && fineArray != null 
                        && fineArray.length != null 
                        && fineArray.length > 0)
                output = true;
            else
                output = false;
  
            document.querySelector('.output-ok').textContent
                    = output;
        }
    </script>
</body>
  
</html>                    

Producción:

  • Antes de hacer clic en el botón:
    old-method-before
  • Después de hacer clic en el botón:
    old-method-after

JavaScript es mejor conocido por el desarrollo de páginas web, pero también se usa en una variedad de entornos que no son de navegador. Puede aprender JavaScript desde cero siguiendo este tutorial de JavaScript y ejemplos de JavaScript .

Publicación traducida automáticamente

Artículo escrito por sayantanm19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *