首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏西安-晁州

    js数组

    对于如下对象数组 [{id: 0, name: "name1"}, {id: 1, name: "name2"},{id: 1, name: "name2"},{id: 1, name: "name2" }, {id: 2, name: "name3"}, {id: 0, name: "name4"}] 现在想要将id相同的对象的name拼起来,笨的算法如下: var ids = []; ,{id: 1, name: "name2"},{id: 1, name: "name2"}, {id: 2, name: "name3"}, {id: 0, name: "name4"}]; += mulArr[j].name; } } } console.log(ret); 对于形如这种字符串或数字数组 : [1,2,3,4,2,6,3,2,6,6,8] 简单算法实现如下: let ret = []; let hash = {}; for (let i = 0; i < arr.length; i++)

    4.4K00发布于 2017-12-26
  • 来自专栏前端小叙

    js数组

    参考:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce#%E6%95%B0%E7%BB%84%E5%8E%BB%E9%87%8D

    3.2K30编辑于 2022-08-20
  • 来自专栏快乐阿超

    js数组

    我们使用数组解构+Set: let list = [1,1,2,3] list = [...new Set(list)] 这里set是一个不重复的集合类,构造函数中我们传入了另一个list 如果是两个数组 let list = [1,2,3] let array = [2,3] list = [...new Set([...list,...array])] 写法如下:

    3.5K40编辑于 2022-08-21
  • 来自专栏胡六娃的博客

    js 数组

    封装了几个js数组的处理 1.获取数组中某一列的全部内容 let arr = [ { id:'232122', name: '张三' },{ id:'12122', array_column(arr, column) { return arr.map(x => x[column]) } array_column(arr,'name'); // ['张三','王二'] 2. 数组 let arr = [1,1,1,2,3]; function array_unique(arr) { return [...new Set(arr)]; } array_unique( arr); //[1,2,3] 3.二维数组 let matrix=[ [1,2,3,4], [3,4,5,6], [1,2,3,4] ] ]]; 4.二维数组,指定字段 let arr = [ { id:'232122', name: '张三' },{ id:'12122', name:'王二',

    4.5K10发布于 2020-02-11
  • 来自专栏全栈程序员必看

    javascript数组set方法_js数组api

    数组的几种方法 1.遍历数组法 ---- 这是最简单的数组方法,实现思路:新建一新数组,传入要去数组,遍历该数组,若值不在新数组中则加入该数组;需要注意点:判断值是否在数组的方法“indexOf new_arr.indexOf(val) === -1){ new_arr.push(val); } }); return new_arr; } 2. 对象键值对法 ---- 思路:新建一对象以及数组,遍历传入的数组,判断值是否为js对象的键,若不是则新增键值,并放入数组中;需要注意的地方:判断是否为js对象键时,会自动对传入的键toString(); new_arr.push(val); } } return new_arr; } 缺点:无法真正区分两个对象,如:`{a:1}`和`{a: 2} false : (obj[type] = item); } ) } // 可去除undefined, NaN, Object重复项 4.ES6,Set和Map ---

    3.4K20编辑于 2022-08-04
  • 来自专栏前端之攻略

    js 数组

    es5 filter写法  var a = [1,3,4,5,1,2,3,3,4,8,90,3,0,5,4,0,25]; var b = a.filter(function(elem,index, return index ===Array.indexOf(elem) }) b.sort(function(a,b){return a-b})  //排序 console.log(b);//[0,1,2,3,4,5,8,25,90           newArr.push(this[i]);         }       }       return newArr;     };     var arr = [1,3,1,2] ;     console.log(arr.unique());   </script> 但是IE6-IE8不支持 数组的indexOf方法 也可以下面的方法,这种方法兼容性比较好。 res.push(this[i]);           json[this[i]]=1;       }     }     return res; } var arr =[1,5,7,5,2,7

    3K30发布于 2019-04-04
  • 来自专栏404

    js对象数组

    利用对象的键名无法重复的特点,必须知道至少一个对象数组中的对象的属性名,对象数组中必须有唯一的id,并且不重复。ES6 提供了新的数据结构 Set,它类似于数组,但是成员的值都是唯一的,没有重复。 Array.from方法 Array.from方法可以将 Set 结构转为数组 const items = new Set([1, 2, 3, 4, 5,1,2,3,4,5,]); Array.from (items);//[1,2,3,4,5] 对象数组中的 var arr = [{id: '1',name: '小红'},{id: '3',name: '小黄'},{id: '2',name: '小明 '},{id: '2',name: '小明'},{id: '1',name: '小红'}]; new Set(arr.map(item=>item.id))//Set { '1', '3', '2' Array.from(new Set(arr.map(item=>item.id)))/[ '1', '3', '2' ]

    6K10编辑于 2022-04-25
  • 来自专栏从零开始学 Web 前端

    js对象数组

    01", value: "乐乐"},{key: "02", value: "博博"},{key: "03", value: "淘淘"},{key: "04", value: "哈哈"}] 方法二: 采用数组中的 reduce方法,遍历数组,也是通过对象访问属性的方法。 // 方法2:利用reduce方法遍历数组,reduce第一个参数是遍历需要执行的函数,第二个参数是item的初始值 var obj = {}; arr = arr.reduce(

    4K30发布于 2019-08-09
  • 来自专栏前端开发随记

    JS数组数组对象方法

    } } return newArr } } console.log(deduplication(arr1)); //3,5,6,7,test 对象数组方法 1. reduce方法 let obj = {}; let arr = [ { name: 'swt', pwd: '123456' }, { name: 'swt '' : obj[next.name] = true && item.push(next); return item }, []) console.log(arr) 2. ES6 Set Set本身是一个构造函数,用来生成Set结构;它类似于数组,但是成员的值是唯一的,没有重复的值 let arr = [ { name: 'swt', pwd: '123456

    15.6K30编辑于 2022-12-15
  • 来自专栏OECOM

    js实现数组操作

    js数组一般两种方法,一种是通过循环判断的方式来去,另一种方式是通过ES6标准的set集合来实现,下面分别来看代码。 然后赋值给一个新的数组。重复操作即可完成。 ,"2","1"]; var theArr = delRepeat(arr);//此时theArr的值为:red,5,2,1 set set的方式就相当简单了,因为在set这种数据结构中是不允许出现相同的值得 ,所以利用这一特性可以方便的实现数组。 只需要下面一行代码即可 [...new Set(arr)]//返回的结果应该为:["red", "1", "5", "2"]

    2.4K10发布于 2020-07-01
  • 来自专栏grain先森

    最全的JS数组

    数组,一般都是在面试的时候才会碰到,一般是要求手写数组方法的代码。如果是被提问到,数组的方法有哪些?你能答出其中的10种,面试官很有可能对你刮目相看。 在真实的项目中碰到的数组,一般都是后台去处理,很少让前端处理数组。虽然日常项目用到的概率比较低,但还是需要了解一下,以防面试的时候可能回被问到。文末有福利哦 1. 2. ]){ array.splice(index,1); } loop(index - 1); //递归loop,然后数组 Set(arr)] [...new Set(arr)] // 代码就是这么少----(其实,严格来说并不算是一种,相对于第一种方法来说只是简化了代码) PS:有些文章提到了foreach+indexOf数组的方法

    2.6K20发布于 2019-03-28
  • 来自专栏前端儿

    JS 数组的几个方法

    1 Array.prototype.unique1 = function () { 2 var n = []; //一个新的临时数组 3 for (var i = 0; i < this.length ; i++) //遍历当前数组 4 { 5 //如果当前数组的第i已经保存进了临时数组,那么跳过, 6 //否则把当前项push到临时数组里面 7 if (n.indexOf re.push(this[i]); 50 } 51 } 52 return re; 53 }; 54 55 56 var arr = [1,2,2,2,3,3,4,5 ]; 57 console.log(arr.unique1()); // [1, 2, 3, 4, 5] 58 console.log(arr.unique2()); // [1, 2, 3, 4, 5 ] 59 console.log(arr.unique3()); // [1, 2, 3, 4, 5] 60 console.log(arr.unique4()); // [1, 2, 3, 4, 5]

    3.1K10发布于 2018-09-03
  • 来自专栏日常记录

    简单的js 数组方法

    数组方法 arr //将要去数组 model //判断数组的字段 function unique ( arr,model ) { //数组 let res = [arr[

    2.7K10发布于 2019-03-28
  • 来自专栏web前端技术分享

    超实用的JS数组

    一、简单的方法,利用数组indexOf方法 // 最简单数组法 /* * 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中 * IE8以下不支持数组的indexOf方法 * */ let array = [1, 2, 3, 2, 2, 3, 4, 3, 4, 5]; // 数组 function unique(ary) { let newAry = []; for /*==数组==*/ let ary = [1, 2, 3, 2, 2, 3, 4, 3, 4, 5]; /* * 1.依次拿出数组中的每一项(排除最后一项:最后一项后面没有需要比较的内容) let ary = [1, 2, 3, 2, 2, 3, 4, 3, 4, 5]; // 使用对象属性名不重复的特点 let obj={}; let newAry = []; let ary = [1, 2, 2, 2, 1, 2, 3, 2, 3, 2, 1], console.log(Array.from(new Set(ary))); //=>基于ES6 SET实现

    2.5K21发布于 2019-11-12
  • 来自专栏全栈程序员必看

    JS数组添加数据、数组排序、数组

    var Data = []; //后台请求返回的result.result.Table for(var i = 0;i < Table.length; i++){ //一维数组 Data.push(Table[i].字段); //二维数组 Data.push({ "value":Table[i].字段}); //多维数组 Table.push(Data); } //数组排序(从小到大) function pup(Data,key){ for (var i = 0; i < Data.length Data[j]=Data[j+1]; Data[j+1]=temp; }; }; }; return Data; }; //数组

    5K30编辑于 2022-07-01
  • 来自专栏技术进阶

    Golang数组&切片

    合并两个整型切片,返回没有重复元素的切片,有两种策略 1. 通过双重循环来过滤重复元素(时间换空间) // 通过两循环过滤重复元素 func RemoveRepByLoop(slc []int) []int { result := []int{} / // 标识为false,不添加进结果 result = append(result, slc[i]) } } return result } 2. 效率第一,如果节省计算时间,则可以采用如下方式 // 元素 func RemoveRep(slc []int) []int{ if len(slc) < 1024 { //

    4.8K20编辑于 2022-09-21
  • 来自专栏国产程序员

    数组

    利用两个for循环和push方法 思路:利用两个for循环.遍历数组中的每一项,对每一项又遍历这项后面的每一项。 ]; console.log(distinct(arra)); //返回[3,4,2,1] </script> 利用两个for循环和splice方法 思路 对数组中的每一项 思路:先用sort方法将数组排序,然后在老数组中循环遍历,将当前项与他的后一项比较,如果相等就删除当前项,并且进行i--和len--继续遍历 <script type="text/javascript 新建一个对象obj,遍历<em>数组</em>中的每一项,如果! } var arr1 = [<em>2</em>,1,<em>2</em>,<em>2</em>,1,34,3,5,54,221,1,1,<em>2</em>,3,12]; var arr<em>2</em> = distinct(arr1);

    4K30发布于 2019-07-03
  • 来自专栏技术社区

    一看就会——js数组

    原生for循环 var str = [ 1, 2, 2, 2, 2, 3, 4, 43, 2, 21, 2, 1, 1, 1, 2, 3, 3, 4, 5, 6, 7 console.log(strArr) //后 ES6中的set方法 set是一个集合允许存储任何类型的唯一值,无论是原始值还是对象引用 set通过构造函数的方式生成,接收一个数组作为参数 , 57, 7, 89, 9, 6, 45, 32, 43, 43, ] //es6中的set方法 console.log(str) //原数组 str.sort((a, b) => { //排序 return a - b }) console.log( Array.from( new Set(str) ) ) //后 //ES6 ()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组

    81840编辑于 2022-06-16
  • 来自专栏前端黑板报

    (转)JS算法系列-数组

    1.遍历数组法 最简单的方法, 实现思路:新建一新数组,遍历传入数组,值不在新数组就加入该新数组中;注意点:判断值是否在数组的方法“indexOf”是ECMAScript5 方法,IE8以下不支持, 需多写一些兼容低版本浏览器代码,源码如下: // 最简单数组法 function unique1(array){ var n = []; //一个新的临时数组 //遍历当前数组 for( 对象键值对法 该方法执行的速度比其他任何方法都快, 就是占用的内存大一些;实现思路:新建一js对象以及新数组,遍历传入数组时,判断值是否为js对象的键,不是的话给对象新增该键并放入新数组。 // 速度最快, 占空间最多(空间换时间) function unique2(array){ var n = {}, r = [], len = array.length, val, type; "sort"方法排序结果不怎么靠谱,但在不注重顺序的里该缺点毫无影响。

    2.2K90发布于 2018-01-29
  • 来自专栏站长的编程笔记

    JS 数组的多种方法

    前言 2. 普通方法数组 3. filter + indexOf 4. ES6 的 new Set() 5. 需要注意的问题 1. 前言 本文提供两个数组变量供测试使用 const array = ['html', 'css', 'js', 'css']const resArr = ['html', 'css', 'css', [1 ], [1]] 2. 普通方法数组 下面列举几种数组的方法思路都一样: 遍历数组,将数组元素添加到新数组中,新数据中已有该元素,则不添加到新数组 // for + indexOfconst res = [];for indexOf() 方法判断元素首次出现的下标是否为当前遍历的下标 // ['html', 'css', 'js']const res = array.filter((item, index) => array.indexOf

    1.5K20编辑于 2022-12-04
领券