Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript:限制项目数_Javascript_Jquery_Arrays - Fatal编程技术网

javascript:限制项目数

javascript:限制项目数,javascript,jquery,arrays,Javascript,Jquery,Arrays,对不起,我是javascrit的新手。 我正在编写一个简单的rss阅读器,但我想将提要的数量限制为5项,因为我的目标站点可以有100项或更多。 代码如下: $("#mainPage").live("pageinit", function () { $("h1", this).text(title); $.get(RSS, {}, function (res, code) { var xml = $(res); var items = xml.find("item"

对不起,我是javascrit的新手。 我正在编写一个简单的rss阅读器,但我想将提要的数量限制为5项,因为我的目标站点可以有100项或更多。 代码如下:

$("#mainPage").live("pageinit", function () {
    $("h1", this).text(title);
    $.get(RSS, {}, function (res, code) {
    var xml = $(res);
    var items = xml.find("item");
    var items = $items.length && i < 5; i++); // here the problem!!
    var entry = "";
            $.each(items, function (i, v) {
            entry = {
                 title:$(v).find("title").text(),
                 link:$(v).find("link").text(),
                 description:$.trim($(v).find("encoded").text()),
                 category:$.trim($(v).find("category").text()),
                 date:$(v).find("pubDate").text().substr(0,16),
                 autor:$(v).find("creator").text()
            };
             entries.push(entry);
         });
     var s = '';
     $.each(entries, function(i, v) {
        s += '<li><a href="#contentPage" class="contentLink" data-entryid="'+i+'">' + v.title + '<br><i>' + v.autor + ' - ' + v.date + '</i></a></li>';
        });
        $("#linksList").append(s);
         $("#linksList").listview("refresh");
    });
});
$(“#主页”).live(“pageinit”,函数(){
$(“h1”,本)。正文(标题);
$.get(RSS,{},函数(res,代码){
var xml=$(res);
var items=xml.find(“item”);
var items=$items.length&&i<5;i++;//问题出在这里!!
var条目=”;
$。每个(项目、功能(i、v){
条目={
标题:$(v).find(“标题”).text(),
link:$(v).find(“link”).text(),
描述:$.trim($(v).find(“encoded”).text()),
类别:$.trim($(v).find(“类别”).text(),
日期:$(v).find(“pubDate”).text().substr(0,16),
autor:$(v).find(“创建者”).text()
};
条目。推送(条目);
});
var s='';
$。每个(条目、函数(i、v){
s+='
  • '; }); $(“#链接列表”)。追加; $(“#链接列表”).listview(“刷新”); }); });
    问题是,当我试图限制添加项目的数量时 var items=$items.length&&i<5;i++); javascript停止工作:-(


    如何做到这一点?

    var items=$items.length&&i<5;i++)无效,我想您需要

    var items=items.slice(0,4)是您想要的

    (正如我所指出的,它是一个jQuery对象)

    jQuery对象本身的行为很像一个数组;它有一个长度 属性和对象中的元素可以通过其 数值索引[0]到[length-1]。请注意,jQuery对象不是 实际上是一个Javascript数组对象,因此它没有所有 真数组对象的方法,如join()

    因为Javascript是基于0的(从0开始计数),所以您需要元素0到4,以便获得前5个元素。

    您可以使用lt(n)函数


    控制台中有错误吗?类似SyntaxErrorinvalid javascript的东西……我也是stackoverflow的新手。:)很抱歉,如果我在本地网络礼仪中犯了错误。TNX给托马斯!你的解决方案正在发挥作用。TNX againi同意,但这是一个jquery问题,使用jquery集合(顺便说一句,我没有投反对票)
    var items = xml.find("item:lt(5)");