.
¿Tienes identificado el sistema que necesitas?
Selecciona una opción
Selecciona una opción
Describe brevemente lo que necesitas desarrollar:
Favor de llenar este campo
Favor de llenar este campo
Escribe aquí tu descripción
¿Para qué plataformas lo necesitas?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Qué requieres que contenga el software?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Qué sistema de notificaciones requieres?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Cuáles de las siguientes tecnologías deseas implementar?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Podrías especificar o describir la tecnología que requieres implementar?
Favor de llenar este campo
Favor de llenar este campo
Describe aquí la tecnología
¿Con qué clase o tipo de hardware necesita el software ser compatible?
Favor de llenar este campo
Favor de llenar este campo
Sensores, paneles, cámaras, etc.
¿A qué clase o tipo de sistema estás considerando integrar este software?
Favor de llenar este campo
Favor de llenar este campo
Describe aquí el sistema existente
Describe brevemente el problema que intentas solucionar:
Favor de llenar este campo
Favor de llenar este campo
Escribe aquí tu descripción
¿En qué área de tu empresa se encuentra el problema?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Qué otra área?
Favor de llenar este campo
Favor de llenar este campo
Escribe aquí el nombre de la área
¿Con quién nos dirigimos?
Favor de compartir mínimo 1 nombre y 1 apellido para saber a quién dirigirnos
Favor de llenar este campo
Favor de llenar este campo
Nombre
¿Cuál es tu correo electrónico?
Favor de escribir un correo electrónico valido
Favor de escribir un correo electrónico valido
Correo electrónico
¿Cómo te gustaría que te contactáramos?
Selecciona tu metodo de contacto preferido
Selecciona una
Selecciona una
¿Cuál es tu número de WhatsApp?
Favor de escribir un número de WhatsApp valido (10 dígitos)
Favor de escribir un número de WhatsApp valido (10 dígitos)
Número de WhatsApp
¿Cuál es tu número de teléfono?
Favor de escribir un número de teléfono valido (10 dígitos)
Favor de escribir un número de teléfono valido (10 dígitos)
Número de teléfono
.
Have you identified the type of system you need?
Selecciona una opción
Selecciona una opción
In just a few words, describe the type of system you're looking for
Please fill out this field
Please fill out this field
Describe the system you need, here.
On what types of platforms does it need to run?
Choose as many as you need
Choose at least one
Choose at least one
What does it need to do?
Choose as many as you need
Choose at least one
Choose at least one
What type of notification alerts do you need?
Choose as many as you need
Choose at least one
Choose at least one
Which technologies does it need to work with?
Choose as many as you need
Choose at least one
Choose at least one
Could you specify or describe the technology you want it to work with?
Please, fill out this field
Please, fill out this field
Describe it here
What kind of existing hardware does it need to work with?
Please, fill out this field
Please, fill out this field
Sensors, cameras, panels, etc.
What kind of existing software does it need to work with?
Please, fill out this field
Please, fill out this field
Describe it here
Describe in just a few words the problem that you're trying to solve:
Please, fill out this field
Please, fill out this field
Describe it here
In what area of your business is the problem located in?
Choose as many as you need
Choose at least one
Choose at least one
What other area?
Please, fill out this field
Please, fill out this field
Name of the area
Who should we address?
Please, fill out this field
Please, fill out this field
First and last name
What's your email address?
Please, use a valid email
Please, use a valid email
Email
How would you like to be contacted
Choose your preferred method
Choose one
Choose one
What's your phone number?
It has to be a valid 10 digit phone number
It has to be a valid 10 digit phone number
Phone number
¿Tienes identificado el sistema que necesitas?
Selecciona una opción
Selecciona una opción
Describe brevemente lo que necesitas desarrollar:
Favor de llenar este campo
Favor de llenar este campo
Escribe aquí tu descripción
¿Para qué plataformas lo necesitas?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Qué requieres que contenga el software?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Qué sistema de notificaciones requieres?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Cuáles de las siguientes tecnologías deseas implementar?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Podrías especificar o describir la tecnología que requieres implementar?
Favor de llenar este campo
Favor de llenar este campo
Describe aquí la tecnología
¿Con qué clase o tipo de hardware necesita el software ser compatible?
Favor de llenar este campo
Favor de llenar este campo
Sensores, paneles, cámaras, etc.
¿A qué clase o tipo de sistema estás considerando integrar este software?
Favor de llenar este campo
Favor de llenar este campo
Describe aquí el sistema existente
Describe brevemente el problema que intentas solucionar:
Favor de llenar este campo
Favor de llenar este campo
Escribe aquí tu descripción
¿En qué área de tu empresa se encuentra el problema?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Qué otra área?
Favor de llenar este campo
Favor de llenar este campo
Escribe aquí el nombre de la área
¿Con quién nos dirigimos?
Favor de compartir mínimo 1 nombre y 1 apellido para saber a quién dirigirnos
Favor de llenar este campo
Favor de llenar este campo
Nombre
¿Cuál es tu correo electrónico?
Favor de escribir un correo electrónico valido
Favor de escribir un correo electrónico valido
Correo electrónico
¿Cómo te gustaría que te contactáramos?
Selecciona tu metodo de contacto preferido
Selecciona una
Selecciona una
¿Cuál es tu número de WhatsApp?
Favor de escribir un número de WhatsApp valido (10 dígitos)
Favor de escribir un número de WhatsApp valido (10 dígitos)
Número de WhatsApp
¿Cuál es tu número de teléfono?
Favor de escribir un número de teléfono valido (10 dígitos)
Favor de escribir un número de teléfono valido (10 dígitos)
Número de teléfono
Have you identified the type of system you need?
Selecciona una opción
Selecciona una opción
In just a few words, describe the type of system you're looking for
Please fill out this field
Please fill out this field
Describe the system you need, here.
On what types of platforms does it need to run?
Choose as many as you need
Choose at least one
Choose at least one
What does it need to do?
Choose as many as you need
Choose at least one
Choose at least one
What type of notification alerts do you need?
Choose as many as you need
Choose at least one
Choose at least one
Which technologies does it need to work with?
Choose as many as you need
Choose at least one
Choose at least one
Could you specify or describe the technology you want it to work with?
Please, fill out this field
Please, fill out this field
Describe it here
What kind of existing hardware does it need to work with?
Please, fill out this field
Please, fill out this field
Sensors, cameras, panels, etc.
What kind of existing software does it need to work with?
Please, fill out this field
Please, fill out this field
Describe it here
Describe in just a few words the problem that you're trying to solve:
Please, fill out this field
Please, fill out this field
Describe it here
In what area of your business is the problem located in?
Choose as many as you need
Choose at least one
Choose at least one
What other area?
Please, fill out this field
Please, fill out this field
Name of the area
Who should we address?
Please, fill out this field
Please, fill out this field
First and last name
What's your email address?
Please, use a valid email
Please, use a valid email
Email
How would you like to be contacted
Choose your preferred method
Choose one
Choose one
What's your phone number?
It has to be a valid 10 digit phone number
It has to be a valid 10 digit phone number
Phone number
.
¿Tienes identificado el sistema que necesitas?
Selecciona una opción
Selecciona una opción
Describe brevemente lo que necesitas desarrollar:
Favor de llenar este campo
Favor de llenar este campo
Escribe aquí tu descripción
¿Para qué plataformas lo necesitas?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Qué requieres que contenga el software?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Qué sistema de notificaciones requieres?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Cuáles de las siguientes tecnologías deseas implementar?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Podrías especificar o describir la tecnología que requieres implementar?
Favor de llenar este campo
Favor de llenar este campo
Describe aquí la tecnología
¿Con qué clase o tipo de hardware necesita el software ser compatible?
Favor de llenar este campo
Favor de llenar este campo
Sensores, paneles, cámaras, etc.
¿A qué clase o tipo de sistema estás considerando integrar este software?
Favor de llenar este campo
Favor de llenar este campo
Describe aquí el sistema existente
Describe brevemente el problema que intentas solucionar:
Favor de llenar este campo
Favor de llenar este campo
Escribe aquí tu descripción
¿En qué área de tu empresa se encuentra el problema?
Selecciona cuantas apliquen
Selecciona al menos una
Selecciona al menos una
¿Qué otra área?
Favor de llenar este campo
Favor de llenar este campo
Escribe aquí el nombre de la área
¿Con quién nos dirigimos?
Favor de compartir mínimo 1 nombre y 1 apellido para saber a quién dirigirnos
Favor de llenar este campo
Favor de llenar este campo
Nombre
¿Cuál es tu correo electrónico?
Favor de escribir un correo electrónico valido
Favor de escribir un correo electrónico valido
Correo electrónico
¿Cómo te gustaría que te contactáramos?
Selecciona tu metodo de contacto preferido
Selecciona una
Selecciona una
¿Cuál es tu número de WhatsApp?
Favor de escribir un número de WhatsApp valido (10 dígitos)
Favor de escribir un número de WhatsApp valido (10 dígitos)
Número de WhatsApp
¿Cuál es tu número de teléfono?
Favor de escribir un número de teléfono valido (10 dígitos)
Favor de escribir un número de teléfono valido (10 dígitos)
Número de teléfono
.
Have you identified the type of system you need?
Selecciona una opción
Selecciona una opción
In just a few words, describe the type of system you're looking for
Please fill out this field
Please fill out this field
Describe the system you need, here.
On what types of platforms does it need to run?
Choose as many as you need
Choose at least one
Choose at least one
What does it need to do?
Choose as many as you need
Choose at least one
Choose at least one
What type of notification alerts do you need?
Choose as many as you need
Choose at least one
Choose at least one
Which technologies does it need to work with?
Choose as many as you need
Choose at least one
Choose at least one
Could you specify or describe the technology you want it to work with?
Please, fill out this field
Please, fill out this field
Describe it here
What kind of existing hardware does it need to work with?
Please, fill out this field
Please, fill out this field
Sensors, cameras, panels, etc.
What kind of existing software does it need to work with?
Please, fill out this field
Please, fill out this field
Describe it here
Describe in just a few words the problem that you're trying to solve:
Please, fill out this field
Please, fill out this field
Describe it here
In what area of your business is the problem located in?
Choose as many as you need
Choose at least one
Choose at least one
What other area?
Please, fill out this field
Please, fill out this field
Name of the area
Who should we address?
Please, fill out this field
Please, fill out this field
First and last name
What's your email address?
Please, use a valid email
Please, use a valid email
Email
How would you like to be contacted
Choose your preferred method
Choose one
Choose one
What's your phone number?
It has to be a valid 10 digit phone number
It has to be a valid 10 digit phone number
Phone number

Método de agrupación de objetos

by | May 24, 2019 | Angular, Ionic

El método de agrupación consiste en buscar el número de ocurrencias dentro de un arreglo de objetos, y generar otro arreglo a partir de las ocurrencias que se hayan encontrado.

En este método ‘agrupación ()’ lo primero que tendremos que hacer es inicializar los valores de nuestros dos arreglos, el primer arreglo en este caso es array_Lista_canje le asignaremos los valores de los objetos que tenemos, y el segundo arreglo arrayAgrupado le inicializaremos sin ningún dato.

Un dato importante en este método de agrupación es que al array ‘arrayAgrupado’ cada que se le agrega un objeto, dicho objeto tendrá un atributo llamado ocurrences, y es ahí donde se irán guardando el número de ocurrencias cada vez que se repita un elemento.

En el primer if que aparece en el método se valida si el arreglo que contiene los datos tiene solamente un elemento, si es así el objeto de ese arreglo se le asignara al arreglo de lista canje y ahí terminaría el proceso del método.

Si no se cumplió la condición anterior quiere decir que el arreglo ‘array_Lista_canje’  tiene más de un elemento y ejecutara el código que está dentro del else, lo primero que tendremos que hacer es empezar a recorrer el arreglo ‘array_Lista_canje’  para poder obtener sus datos, esto lo aremos con un for, cuando el for empieza a realizar su recorrido lo primero que deberá de hacer es obtener el primer valor del arreglo ‘array_Lista_canje’  y asignárselo al arreglo de lista canje, un dato importante  es incrementar el valor de la variable del ciclo for, esto para que no ejecute el código que esta abajo y vuelva a empezar a realizar el recorrido con los demás elementos.

 

 

Después de que haya realizado la primera iteración el ciclo, ahora tendremos que empezar a buscar las ocurrencias para ello usaremos la función llamada filter, que nos permite buscar un elemento dentro de un objeto y en caso de que no exista regresa un valor tipo undefined.

Si el resultado de la búsqueda fue undefined significa que el elemento no esta y por consecuencia se agregara un nuevo objeto al arreglo arrayAgrupado.

Si el resultado no fue undefinded significa que se encontró el objeto y por consecuencia debemos de incrementar el número de ocurrencias en 1. Para ello realizaremos un recorrido del arreglo de agrupación para buscar en qué posición esta el elemento que se encontró y sumarle un 1 a las ocurrencias del objeto.

Código

agrupacion() {

this.array_Lista_canaje = this.servicios.getDatosCatalogo();
this.arrayAgrupado = [];

if (this.array_Lista_canaje.length === 1) {
this.datosCompra = {
Id: this.array_Lista_canaje[0].IDReward,
Name: this.array_Lista_canaje[0].Name,
Url: this.array_Lista_canaje[0].Url,
Descripction: ”,
Points: this.array_Lista_canaje[0].Points,
Date: ’25/12/2019′,
Ocurrences: 1
};
this.arrayAgrupado.push(this.datosCompra);
} else {
for (let i = 0; i < this.array_Lista_canaje.length; i++) {
if (i === 0) {
this.datosCompra = {
Id: this.array_Lista_canaje[i].IDReward,
Name: this.array_Lista_canaje[i].Name,
Url: this.array_Lista_canaje[i].Url,
Descripction: ”,
Points: this.array_Lista_canaje[i].Points,
Date: ’25/12/2019′,
Ocurrences: 1
};
this.arrayAgrupado.push(this.datosCompra);
i++;
}

this.datoBusqueda = this.arrayAgrupado.filter(data => data.Name === this.array_Lista_canaje[i].Name)[0];
if (this.datoBusqueda === undefined) {
this.datosCompra = {
Id: this.array_Lista_canaje[i].IDReward,
Name: this.array_Lista_canaje[i].Name,
Url: this.array_Lista_canaje[i].Url,
Descripction: ”,
Points: this.array_Lista_canaje[i].Points,
Date: ’25/12/2019′,
Ocurrences: 1
};
this.arrayAgrupado.push(this.datosCompra);
} else {
for (let j = 0; j < this.arrayAgrupado.length; j++) {
if (this.datoBusqueda.Name === this.arrayAgrupado[j].Name) {
this.arrayAgrupado[j].Ocurrences = this.arrayAgrupado[j].Ocurrences + 1;
}
}
}
}
}
}

 

Entradas relacionadas

Descubre en 5 minutos las áreas de tu empresa puedes mejorar