Objeto typeError.foreach no es una función en JavaScript

Objeto typeError.foreach no es una función en JavaScript
En JavaScript, el "para cada()El método "ejecuta una función dada una vez para cada elemento de matriz. El método foreach () se usa en cada matriz, set o elemento de mapa. Si intenta utilizar este método en cualquier otro tipo, lanzará un error "objeto.foreach no es una función en JavaScript". Entonces, úselo en matrices, mapas o conjuntos o convierta los valores a estos tipos y luego aplique este método a ellos.

Este artículo definirá el error mencionado y sus posibles soluciones.

¿Cómo "TypeError: Object.foreach no es una función en JavaScript ”?

Cuando se usa un valor que no es una matriz, mapa o conjunto, el "para cada()Método "como"Objeto"Y así sucesivamente, el"TypeError: objeto.foreach no es una función en JavaScript" ocurre. Probemos la causa declarada prácticamente.

Ejemplo

En el ejemplo dado, primero crearemos un objeto con sus propiedades en el par de valores clave:

Const Object =
Nombre: 'Stephen',
Rollno: 11,
Asunto: 'Comercio'
;

Luego, imprima sus propiedades/entradas en la consola utilizando el método foreach ():

objeto.foreach (o =>
consola.logo);
);

Como puede ver en la salida, se encuentra un error porque el método foreach no es aplicable para objetos:

Cómo corregir el error especificado?

Para resolver el error discutido anteriormente, use los métodos de objeto como "Objeto.llaves()"Para obtener las llaves en una matriz", "Objeto.valores()"Para obtener valores del objeto, o"Objeto.entradas ()"Para recuperar todas las entradas de un objeto. Además, el "Formación.de()El método "convierte el objeto especificado en una matriz de objetos.

Intentemos un ejemplo para resolver este problema.

Ejemplo 1: corrige el error mencionado usando un objeto.Método de entradas ()

En este ejemplo, obtendremos las entradas de un objeto usando el "Objeto.entradas ()"Método con el"para cada()"Método que devuelve una matriz de entradas de Object en pares de valor clave:

Objeto.Entradas (objeto).foreach (en =>
consola.log (en);
);

No dará un error, porque el objeto.El método Entries () convierte los valores en una matriz y el método foreach () se usa para ejecutar la función dada en cada elemento.

La salida indica que el método foreach () se ejecuta correctamente en el objeto usando el objeto.Método de entradas ():

Nota: El método foreach también se aplica para obtener claves y valores de un objeto utilizando el objeto.llaves () y objeto.Método valores ().

Ahora, veamos si no desea obtener las claves, valores o entradas de un objeto, entonces, ¿qué haría?? Ver el ejemplo dado!

Ejemplo 2: corrige el error mencionado usando una matriz.del método ()

Para corregir este error, convierta el objeto en una matriz de objetos y luego aplique el método foreach () utilizando el "Formación.de()" método. Imprimirá todas las propiedades de un objeto sin dar un error.

Primero convierta el objeto en una matriz de objetos:

const objeto = [
Nombre: 'Stephen',
Rollno: 11,
Asunto: 'Comercio'
]

Llame al método foreach ():

Formación.de (objeto).foreach (ob =>
consola.log (OB);
);

Producción

Hemos compilado las mejores soluciones posibles para corregir el error especificado.

Conclusión

El error mencionado ocurre cuando intenta usar el "para cada()"Método en un valor que no es una matriz, configuración o mapa. Para corregir este error, use el "Formación.de()Método "para convertir el objeto a una matriz y luego usar el método foreach () en él. Este artículo describió la ocurrencia y la solución del error mencionado.