Método Underscore.js _.iterators.mapcat()

Con la ayuda del método _.iterators.mapcat() , podemos obtener la función iterador que, cuando se llama, devuelve el valor que aplana el contenido del iterador y se combina con la función unaria usando este método.

Sintaxis:

_.iterators.mapcat(iter, unaryFn)

Parámetros: Este método acepta dos parámetros como se mencionó anteriormente y se describe a continuación: 
 

  • iter: este parámetro contiene la lista de iteradores de la array.
  • unaryFn: este parámetro contiene la tecla de función unaria.

Valor devuelto: devuelve el iterador de función que genera el valor mediante el mapeo con unaryFn.

Nota: Para ejecutar los ejemplos a continuación, debe instalar la biblioteca de subrayado-contrib utilizando este símbolo del sistema. Tenemos que ejecutar el siguiente comando.

npm install underscore-contrib

El siguiente ejemplo ilustra el método Underscore.js _.iterators.mapcat() en JavaScript:
 

Ejemplo 1: en este ejemplo, podemos ver que al usar el método _.iterators.mapcat() , podemos obtener el iterador de función que puede generar el valor después de mapear con la función unaria usando este método.

Javascript

// Defining underscore contrib variable
var _ = require('underscore-contrib');
 
function generateNumber (x)  {
    return _.iterators.List(_.range(1, x));
}
 
var treeIter = _.iterators.Tree([2, [3]]);
 
var geek = _.iterators.mapcat(treeIter, generateNumber);
 
geek();
geek();
geek();

Producción :

1
1
2

Ejemplo 2:

Javascript

// Defining underscore contrib variable
var _ = require('underscore-contrib');
 
function generateNumber (x)  {
    return _.iterators.List(_.range(x));
}
 
var treeIter = _.iterators.Tree([[2, 1], [1, 3]]);
 
var geek = _.iterators.mapcat(treeIter, generateNumber);
 
for(var i = 0; i < 5; i++) {
    console.log(geek());
}

Producción:

0
1
0
0
0

Publicación traducida automáticamente

Artículo escrito por Jitender_1998 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 *