使用每个函数突然出现额外的数组字符串

Posted

技术标签:

【中文标题】使用每个函数突然出现额外的数组字符串【英文标题】:extra array string shows up out of nowhere using each function 【发布时间】:2014-08-05 09:37:36 【问题描述】:

1.Original Example

2.Example

我在使用来自 site 的条形图插件时遇到了一个奇怪的问题。 谁能弄清楚为什么第一个div.largearea 的数组突然出现在第二个示例的左下角?

当页面上只有一个div.largearea 时,它根本没有任何问题,如您在第一个示例中所见。

html:

<div class="get" data-stats="10.3,'1','#222222'"></div>
<div class="get" data-stats="15.2,'2','#7D252B'"></div>
<div class="get" data-stats="13.1,'3','#EB9781'"></div>
<div class="get" data-stats="16.3,'4','#FFD2B5'"></div>
<div class="get" data-stats="14.5,'5','#4A4147'"></div></div>
<div class="largearea">
<div class="exampleSimple"></div>

<div class="get" data-stats="10.3,'Nov','#222222'"></div>
<div class="get" data-stats="15.2,'Dec','#7D252B'"></div>
<div class="get" data-stats="13.1,'Oct','#EB9781'"></div>
<div class="get" data-stats="16.3,'June','#FFD2B5'"></div>
<div class="get" data-stats="14.5,'May','#4A4147'"></div></div>

jQuery:

$(function() 
    var arrayOfData = [];
    $('.largearea').each(function()
        var getbar = $(this).find('.get'),
            getpie = $(this).find('.exampleSimple');
            getbar.each(function()
             var getstats = $(this).data('stats').split(',');
              getstats[1] = getstats[1].replace(/'/g,'');
              getstats[2] = getstats[2].replace(/'/g,'');
              arrayOfData.push(getstats);
            );

        getpie.jqbargraph(
        data: arrayOfData 
    );
  );


);

【问题讨论】:

这个插件好像不支持多图表。请换成其他绘图工具。 您检查过 D3 以了解您想要做什么吗? 【参考方案1】:

我的猜测是因为它不能将多个图表绘制到同一个 div。当您使用类选择器时,它试图在该类的所有 div 上绘制相同的图表。

如果您需要绘制多个图表,您可能必须将它们呈现到不同的 div 中,甚至为每个图表创建一个新实例。

知道您是否要绘制多个图表或您正在尝试做什么会有所帮助

【讨论】:

以上是关于使用每个函数突然出现额外的数组字符串的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Javascript .filter() 方法中将额外参数传递给回调函数?

2021-09-20:给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O

实验1

实验一

双指针总结

循环或映射Core Data数组以获取对象的每个出现