如何从数组中获得前N个元素

我正在使用JavaScript(ES6)/ FaceBook的反应,并试图获得数组的大小不一的前3个元素。 我想做相当于Linq的(n)。

在我的Jsx文件中,我有以下几点:

var items = list.map(i => { return ( <myview item={i} key={i.id} /> ); }); 

然后得到我尝试的前三个项目

  var map = new Map(list); map.size = 3; var items = map(i => { return (<SpotlightLandingGlobalInboxItem item={i} key={i.id} />); }); 

这不起作用,地图没有设置function。

你能帮忙吗?

我相信你在找什么:

 // ...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> ) 

要获得数组的前n元素,请使用

 array.slice(0, n); 

不要尝试使用地图function。 应该使用Map函数将值从一个事物映射到另一个事物。 当input和输出的数量相匹配时。

在这种情况下,使用数组上也可用的filter函数。 filterfunction是用来select性地采取某些标准的值。 然后你可以写你的代码

 var items = list .filter((i, index) => (index < 3)) .map((i, index) => { return ( <myview item={i} key={i.id} /> ); });