如何使用JavaScript和for循环仅显示x个分区

时间:2015-04-28 17:41:16

标签: javascript

我使用下面的脚本按降序显示动态数据:

var main = document.getElementById( 'container' );

[].map.call( main.children, Object ).sort( function ( a, b ) {
    return +b.id.match( /\d+/ ) - +a.id.match( /\d+/ );
}).forEach( function ( elem ) {
    main.appendChild( elem );
    }

});

使用PHP,它显示以下内容:

<div id="container">
  <div id="data-7">data 7</div>
  <div id="data-6">data 6</div>
  <div id="data-5">data 5</div>
  <div id="data-4">data 4</div>
  <div id="data-3">data 3</div>
  <div id="data-2">data 2</div>
  <div id="data-1">data 1</div>
</div>

我想在<div id="container">内只显示5个分区,所以我尝试在forEeach中添加这个分区,但它没有工作:

for (i = 0; i < 5; i++) {
}

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

使用.slice

从数组中取出前五个元素
[].map.call( main.children, Object ).sort(...).slice(0, 5).forEach(...)