Cómo obtener el primer N número de elementos de una matriz
Estoy trabajando con Javascript(ES6) /Facebook react y tratando de obtener los primeros 3 elementos de una matriz que varía en tamaño. Me gustaría hacer el equivalente de Linq tomar (n).
En mi archivo Jsx tengo lo siguiente:
var items = list.map(i => {
return (
<myview item={i} key={i.id} />
);
});
Luego para obtener los primeros 3 elementos que intenté
var map = new Map(list);
map.size = 3;
var items = map(i => {
return (<SpotlightLandingGlobalInboxItem item={i} key={i.id} />);
});
Esto no funcionó ya que map no tiene una función set.
¿Puedes ayudar?
4 answers
Creo que lo que estás buscando es:
// ...inside the render() function
var size = 3;
var items = list.slice(0, size).map(i => {
return <myview item={i} key={i.id} />
}
return (
<div>
{items}
</div>
)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-01-19 17:33:37
Para obtener los primeros elementos n
de una matriz, use
array.slice(0, n);
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-01-19 17:23:41
Esto puede ser sorprendente, pero length
la propiedad de un array no solo se usa para obtener el número de elementos del array, sino que también se puede escribir y se puede usar para establecer la longitud del array MDN link. Esto mutará la matriz.
Si la matriz actual ya no es necesaria y no le importa la inmutabilidad o no desea asignar memoria, es decir, para un juego, la forma más rápida es
arr.length = n
Para vaciar un array
arr.length = 0
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-09-13 15:15:54
No intente hacer eso usando una función de mapa. La función Map debe usarse para mapear valores de una cosa a otra. Cuando el número de entrada y salida coinciden.
En este caso use la función de filtro que también está disponible en la matriz. Función de filtro se utiliza cuando desea tomar selectivamente valores maching ciertos criterios. Entonces puedes escribir tu código como
var items = list
.filter((i, index) => (index < 3))
.map((i, index) => {
return (
<myview item={i} key={i.id} />
);
});
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-19 19:30:15