Js 数组的各种方法及操作

一、数组去重

  var arr = [0,1,20,3,0,45,6,0];
  Array.prototype.unrepeat = function(){
    var array = [];
    for(var i = 0;i<this.length;i++){
      if(array.indexOf(this[i]) === -1){
        array.push(this[i]);
      }
    }
    return array;
  }
console.log(arr.unrepeat());

二、数组排序

  var arr = [1,5,9,4,8,7]
  arr = arr.sort(function(a,b){return a-b})        // 升序  
  console.log(arr);

三、数组对象的排序

  var arr = [{id:1},{id:7},{id:5},{id:9},{id:20},{id:3}]
  arr = arr.sort(function(a,b){return a.id - b.id})
  console.log(arr)

四、字符串转换数组的小方法

  1)eval():  

    var arr = "[1,2,3,4,5]";
    console.log(eval(arr))      //  性能较差

  2)JSON.parse();

    var arr = "[1,2,3,4,5]";
    console.log(JSON.parse(arr))

  3)es6的Array.of()

    console.log(Array.of(1,2,3,4,8))
    console.log(Array.of("a","b","c","d"))

  4)非字符串数组格式的字符串转化成数组

    var arr = "1,2,3,4,5";
    arr = "["+arr+"]"
    console.log(JSON.parse(arr),eval(arr));

五、数组转化成字符串

  1)toString()

    var arr = ["Creek","Sinoshy","Stream"]

    console.log(arr.toString())   // 以“,”作为分隔符

  2)join()

    var arr = ["Creek","Sinoshy","Stream"]

    console.log(arr.join())   // 默认以逗号分隔,如果给参数,那么会根据给的参数进行分隔

六、删除两个数组中相同的元素

  let arr1 = [1,5,7];
  let arr2 = [1,2,3,4,5,6,7]
  for(let i = 0;i < arr1.length;i ++){
    for(let x = 0;x < arr2.length;x ++){
      if(arr1[i] === arr2[x]){
        arr2.splice(x,1)
      }
    }
  }
  console.log(arr2)

原文地址:https://www.cnblogs.com/ywx354980-bk/p/9204457.html

时间: 2024-11-06 07:32:27

Js 数组的各种方法及操作的相关文章

JS数组的遍历方法

JS数组的遍历方法有两种: 第一种:一般的for循环,例如: 1 2 3 4 var a = new Array("first", "second", "third") for(var i = 0;i < a.length; i++) { document.write(a[i]+","); } 输出的结果:fitst,second,third 第一种:用for...in 这种遍历的方式,例如: 1 2 3 4 var a

js 数组中sort方法存在的问题

chrome中测试sort方法 发现排序失效,查过资料发现,js数组的sort方法总会以第一个字符的ASCII值来进行比较排序 解决办法一:给sort方法指定一个比较函数作为参数,如下图 解决办法二:自己一个排序算法,自己造轮子 原文地址:https://www.cnblogs.com/xingguozhiming/p/8996700.html

js 数组去重的方法总结

想沉淀一下自己.代码改变世界~~~ 1.利用Array.from代码如下 1 var arr = [1,2,3,4,3,2,1] 2 function unique(arr){ 3 return Array.from(new Set(arr)) 4 } 5 console.log(unique(arr)) 2.利用es6(...)拓展运算符.demo 1 var arr = [1,2,3,4,3,2,1] 2 function unique(arr){ 3 return [...new Set(

js数组遍历的方法

前言 在工作或者学习中,我们经常处理基本数据类型,其中数组更是天天见面,js中数组遍历的方法种类众多,所以在这里,我总结了一下,准备写一写关于数组遍历的常见方法,废话少说,请少侠看代码. 测试用例 var arr = [1,2,3,4,5,6] 方法一  for 循环 for循环,也是最常见的,最简单的    for(var i=0; i<arr.length;i++){        console.log(arr[i]);    }; 方法二 for in 循环遍历数组的属性```  for

js数组去重的方法

1.如果不借助任何方法,初级写法应该是: function unique(arr){ var res=[]; for(var i=0,len=arr.length;i<len;i++){ var obj = arr[i]; for(var j=0,jlen = res.length;j<jlen;j++){ if(res[j]===obj) break; } if(jlen===j)res.push(obj); } return res; } var arr=[1,1,'2','1',3,4]

JS —— 数组与字符串方法

数组 1. 基本方法  1)Array.prototype.unshift(item1,item2,item3...) 描述: 在数组的前面添加元素,一次可以传入多个参数. 注意:元素会根据当前传入的顺序添加到数组的前面. 示例: var arr = ['a','b','c'] var result = arr.unshift(9) console.log(result)// 4 console.log(arr)// [9,'a','b','c'] var result1 = arr.unshi

js数组高阶方法reduce经典用法代码分享

以下是个人在工作中收藏总结的一些关于javascript数组方法reduce的相关代码片段,后续遇到其他使用这个函数的场景,将会陆续添加,这里作为备忘. javascript数组那么多方法,为什么我要单挑reduce方法,一个原因是我对这个方法掌握不够,不能够用到随心所欲.另一个方面,我也感觉到了这个方法的庞大魅力,在许多的场景中发挥着神奇的作用. 理解reduce函数 reduce() 方法接收一个函数作为累加器(accumulator),数组中的每个值(从左到右)开始缩减,最终为一个值. a

JS数组对象Array方法

1.concat() 连接两个或更多的数组.该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. var arr = [1, 2, 3]; var arr1 = [11, 22, 33]; document.write(arr.concat(4, 5, arr1)); 输出结果: 1,2,3,4,5,11,22,33 2.join() 把数组的所有元素放入一个字符串.元素通过指定的分隔符进行分隔. var arr = ['item 1', 'item 2', 'item 3']; var

js数组声明+split()方法

split()方法:var words = sentence.split(' '): "hello".split("", 3) //可返回 ["h", "e", "l"] 数组声明:方法一:var a = new array();a[0] = "1";a[1] = 2;a[2] = { x:1, y:3};方法二:var  a  =  new array("1" ,