JS数组中相同元素生成新数组

我们经常要做把数组中相同元素删除,这个好实现如下

split用法

 代码如下 复制代码

•<script language="javascript">  
•function spli(){  
•         datastr="2,2,3,5,6,6";     
•  var str= new Array();  
• 
•  str=datastr.split(",");     
•    for (i=0;i<str.length ;i++ )  
•    {  
•        document.write(str[i]+"<br/>");  
•    }  
•}  
•spli();  
•</script> 

刚才一朋友问了我一个问题:

 代码如下 复制代码

arr=['1','1','1','2',,'3','4','5','5','6','6','7','8','9','9','10'];

现在有一个这样规律的数组,需求是把里面相同元素组合成一个新的数组,有什么比较简便的方法不

也就是说,最终要的结果是这样的:

 代码如下 复制代码

newArr = [ [ "1" , "1" , "1" ] , [ "2" ] , [] , [ "3" ] , [ "4" ] , [ "5" , "5" ] , [ "6" , "6" ] , [ "7" ] , [ "8" ] , [ "9" , "9" ] , [ "10" ] ]

 

var arr=['1','1','1','2',,'3','4','5','5','6','6','7', '8','9','9','10'];
 var newArr = [],
     tempArr = [];
 for(var i=0,j=arr.length;i<j;i++){
    if(arr[i] == arr[i+1]){
        tempArr.push(arr[i]);
    } else {
        tempArr.push(arr[i]);
        newArr.push(tempArr.slice(0));
        tempArr.length = 0;
    }
 }
 console.log(newArr);
 /*[ [ "1" , "1" , "1" ] , [ "2" ] , [] , [ "3" ] , [ "4" ] ,[ "5" , "5" ] , [ "6" , "6" ] ,  [ "7" ] , [ "8" ] , [ "9" , "9" ] , [ "10" ] ]*/

时间: 2024-09-25 06:24:51

JS数组中相同元素生成新数组的相关文章

怎么调用数组中的元素全是数组

问题描述 求大神们帮我看看 解决方案 解决方案二:不就是个数组么?解决方案三:直接用下标访问就是了,你的问题是什么解决方案四:本身就是元素为数组的数组,当然里面全是数组啦!解决方案五:[0,0]13.0意思是在二维数组0,0位置的元素值为13.0解决方案六:这个数组是从MATLAB中的元胞数组调出来的,数组中的元素全部是数组,请问怎么取出其中的数组元素解决方案七:这个就是一个二维数组喽doubles=double[0][0];s=13.0解决方案八:inta=arr[0][0]这样解决方案九:差

php删除数组中重复元素的方法_php技巧

几种php删除数组元素方法在很多情况下我们的数组会出现重复情况,那我们删除数组中一些重复的内容怎么办,这些元素必须保持他唯一,所以就想办法来删除它们,下面利用了遍历查询来删除重复数组元素的几种方法.方法一.完整删除重复数组实例-----删除数组中的一个元素 function array_remove_value(&$arr, $var){ foreach ($arr as $key => $value) { if (is_array($value)) { array_remove_value

JS 清除字符串数组中,重复元素的实现方法_javascript技巧

JS 清除字符串数组中,重复元素的实现方法 <script language="JavaScript"> <!-- var arrData=new Array(); for(var i=0; i<1000; i++) { arrData[arrData.length] = String.fromCharCode(Math.floor(Math.random()*26)+97); } //document.write(arrData+"<br/&g

js删除Array数组中指定元素的两种方法_javascript技巧

本节内容: js删除Array数组中指定元素 方法一, /* * 方法:Array.remove(dx) 通过遍历,重构数组 * 功能:删除数组元素. * 参数:dx删除元素的下标. */ Array.prototype.remove=function(dx) { if(isNaN(dx)||dx>this.length){return false;} for(var i=0,n=0;i<this.length;i++) { if(this[i]!=this[dx]) { this[n++]=

js以分隔符分隔数组中的元素并转换为字符串的方法_javascript技巧

如下所示: <html> <body> <script type="text/javascript"> var arr = new Array(3) ; arr[0] = "Jani"; arr[1] = "Hege"; arr[2] = "Stale"; document.write(arr.join() + "<br />");//默认情况下不提供分隔符,

五种js 删除数组中重复元素实例

// 如果单个字符.. 效率扩展都很差... alert(['a','b','c','a','b','d','b'].sort().join("").replace(/(w)1*/g,"$1,")); 方法一 <script language="网页特效">      var fruit = new array(3);      fruit[0] = new array("苹果", "a"); 

JavaScript通过元素索引号删除数组中对应元素的方法

 这篇文章主要介绍了JavaScript通过元素索引号删除数组中对应元素的方法,涉及javascript操作数组的技巧,非常具有实用价值,需要的朋友可以参考下     本文实例讲述了JavaScript通过元素索引号删除数组中对应元素的方法.分享给大家供大家参考.具体分析如下: JavaScript通过元素的索引号删除数组中的元素,如果要删除第3个元素,则使用RemoveValByIndex(2)即可,JS数组从0开始 ? 1 2 3 4 5 6 7 8 9 10 11 function Rem

PHP的数组中提高元素查找与元素去重的效率的技巧解析_php技巧

提高查找数组元素的效率 1.php in_array方法说明 php查找数组元素是否存在,一般会使用in_array方法. bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] ) 参数说明: needle 待搜索的值,如果needle是字符串,比较是区分大小写的. haystack 用来比较的数组 strict 如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 n

jquery删除数组中重复元素_jquery

话不多说,下面就跟着小编来看下利用jquery实现删除数组中重复元素的具体思路吧 首先定义如下数组: var arr=[0,2,3,5,6,9,2]; 我们可以看到数组中存在重复元素'2'; 最后通过jquery筛选应该得到[0,2,3,5,6,9]; ok,首先我们再定义一个空数组,用来存放最后筛选出来的元素: var new_arr=[]; 利用jquery的$.inArray可以轻松实现: 遍历数组元素: for(var i=0;i<arr.length;i++) { var items=