Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.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,假设我有一些颜色: 红色的 蓝色的 蓝色的 绿色的 我只想把唯一的放进一个数组。然后,我希望将该数组中的每个项添加到已经存在的颜色列表中。所以我的最终结果是: <ul> <li>Original Color</li> <li>Original Color</li> <li>Red</li> <li>Blue</li> <li>Green</l

假设我有一些颜色:

红色的

蓝色的

蓝色的

绿色的

我只想把唯一的放进一个数组。然后,我希望将该数组中的每个项添加到已经存在的颜色列表中。所以我的最终结果是:

<ul>
   <li>Original Color</li>
   <li>Original Color</li>
   <li>Red</li>
   <li>Blue</li>
   <li>Green</li>
</ul>

我不敢发表这篇文章,因为我不知道这是否有意义,尤其是在我的例子中。我真的得到了一个年份列表,每年只需要把其中的一个放入ul,就可以为日历分页了。我有自己独特的年表,但我不知道现在该怎么办。

我终于找到了一些有效的方法。我很确定这不是最好的方法,但我已经想了好几个小时了,所以好吧

var yearArray = [];
$('#calendar .item').each(function(){
    var dataYear = $(this).attr('data-year');
    yearArray.push(dataYear);
});
var unique = new Array();
$(yearArray).each(function(index, item) {
    if ($.inArray(item, unique) == -1)
    unique.push(item);
});
$(unique).each(function(index, item) {
    $("#years ul").append($("<li>").html(item));
});
var yearray=[];
$('#calendar.item')。每个(函数(){
var dataYear=$(this.attr('data-year');
yearray.push(数据年);
});
var unique=新数组();
$(yearArray).每个(函数(索引,项){
如果($.inArray(项,唯一)=-1)
唯一。推送(项目);
});
$(唯一)。每个(功能(索引,项){
$(“#年”).append($(“
  • ”).html(项目)); });
  • 如果你问一个关于javascript的问题,包含你尝试过的代码会有帮助。那么…你真的在问“如何使用javascript/jQuery添加HTML列表项”?尝试这个问题有一个很好的例子,说明了如何向数组添加函数。prototype可以提取唯一的值。基本上,我需要将Zhihao和War10ck的链接组合成1。我可以做个别的事情。我不知道如何让它们一起工作。正如你在问题中提到的,你似乎已经有了独特的部分,所以你不需要@War10ck的链接。您只需复制粘贴我之前评论中链接中的顶部答案,然后将其列表项内容替换为您的内容。您不需要合并任何内容,因为这些是独立的问题,您只需要将“添加列表项代码”直接放在“获取唯一项”代码之后。你在哪一部分有问题?
    var yearArray = [];
    $('#calendar .item').each(function(){
        var dataYear = $(this).attr('data-year');
        yearArray.push(dataYear);
    });
    var unique = new Array();
    $(yearArray).each(function(index, item) {
        if ($.inArray(item, unique) == -1)
        unique.push(item);
    });
    $(unique).each(function(index, item) {
        $("#years ul").append($("<li>").html(item));
    });