JS数组的常用方法

1.toString()

将一个数组转换为字符串

语法:var str = 数组对象 . toString

2.join()

将数组中的元素通过指定的分隔符连接到一起,并返回连接后的字符串

语法:var str = 数组对象 . join("&");

3.连接数组

函数:concat()

作用:拼接两个或更多的数组,并返回拼接后的结果

语法:arr1.concat(arr2,arr3);

注意:

(1)concat不会改变现有数组,而是返回拼接后的结果

(2)每个参数不一定非是数组,也可以是普通的数据

练习:

定义两个数组,sel和unsel,将unsel中的数据移入到sel中,最后显示效果为sel内容为sel+unsel,unsel为空数组

function testConcat(){
                var sel = ["中国","美国","俄罗斯"];
                var unsel = ["朝鲜","越南","老挝"];
                sel = sel.concat(unsel);
                unsel.length = 0;
                console.log(sel);
                console.log(unsel);
            }

4.获取子数组(截取数组)

函数:slice()

作用:从指定数组中,截取几个连续的元素组成的新数组

语法:arr . slice ( start , [ end ] )

start:从哪个下标开始截取,取值为正,从前向后取,取值为负,从后向前算位置(若取负数,最后一个数为-1)

end:指定结束处的下标(不包括该下标),该参数可以省略,如果省略的话,就是从start一直截取到结束

注意:该函数不会影响现有数组,会返回全新的数组

5.修改数组

函数:splice()

作用:允许从指定数组中,删除一部分元素,同时再添加另一部分元素

语法:arr . splice(start , count ,e1,e2……);

start:指定添加或删除元素的起始位置/下标

count:要删除的元素个数,取值为0表示不删除

e1,e2……:要增加的新元素,允许多个

返回值:返回一个由删除元素所组成的数组

注意:splice函数会改变现有数组

6.数组的反转

作用:颠倒数组中元素的顺序

语法:arr . reverse();

注意:该函数会改变当前数组的内容

7.数组排序

函数:sore()

语法:arr . sort(排序函数)

作用:默认情况下,按照元素的Unicode码大小升序排序

特殊:如果想实现对数字的升序和降序的排列,需要自己指定排序函数

ex:
  var arr = [12,5,6,8];
  //排序函数(升序)
  function sortAsc(a,b){
    return a-b;
  }
  arr.sort(sortAsc);

原理:指定排序函数 如 sortAsc,定义 两个参数,如 a 和 b。数组会自动传递数据到 sortAsc 里面去,如果返回值是>0的数,则交换两个数的位置,否则不变

使用匿名函数完成排序:

arr.sort(function(a,b){return a-b;});

8.进出栈操作

JS是按照标准的"栈式操作"访问数组的,所有的"栈式操作"的特点都是"后进先出"

(1)push()
    入栈,在栈顶(数组的尾部)添加指定的元素,并返回新数组的长度

var arr = [10,20,30];
    //向栈顶增加新数据 40
    var len = arr.push(40);
    //len 保存的是 40 入栈后 arr 的长度,值是4

(2)pop()
     出栈,删除并返回栈顶的(数组尾部)元素

var arr = [10,20,30];
    var r1 = arr.pop();//arr = [10,20]
    var r2 = arr.pop();//arr = [10]
    ==============================
    arr :
    r1 : 30
    r2 : 20

(3)shift()
    删除数组头部的(第一个)元素并返回

var arr = [10,20,30];
    var r1 = arr.shift();
    ============================
    arr : [20,30]
    r1 : 10

(4)unshift()
  作用:在数组的头部(第一个)元素位置处,增加新元素

var arr = [10,20,30];
    arr.unshift(40);
    arr : [40,10,20,30]

 

(0)

相关推荐

  • 最全的JavaScript常见的操作数组的函数方法宝典

    JavaScript在其内部封装了一个Array对象,使得我们可以方便地使用数组这种简单的数据结构,同时,也在 Array对象的原型上定义了一些常用并且很有用的操作数组的函数. 本文就将详细介绍一下每 ...

  • JS数组和字符串汇总

    数组 1. 基本常识 数组是引用类型的一种,什么是引用类型呢? 和原始类型不同,引用类型变量中存放的仅仅是引用对象的内存地址. 所以,当我们复制引用类型的时候,复制的仅仅是它的地址罢了. 也就是说,任 ...

  • javascript 数组 对象的一些方法记录

    记录一下常用的数组和对象的一些方法 数组 push() 数组后添加元素 // 作用:把一个元素或多个元素,从数组后面添加到数组里面: // 参数:添加的数据 // 返回:添加后的数组的长度: let ...

  • js数组方法(管饱)

    有一些数组方法是ECMAScript新增的,一定要注意浏览器的兼容!!Array对象属性:属性说明constructor返回对创建此对象的函数引用length返回集合内的元素的所有长度prototyp ...

  • 数组的常用方法之split

    今天我们来聊一下数组的常用方法:split 返回值:一个新数组. 1.该方法可以直接调用不传任何值,则会直接将字符串转化成数组. var str = 'I love Javascript'; cons ...

  • JS数组

         1.isArray()方法  判断变量是否是一个数组 var a = [1,2]; var b.innerHTML = Array.isArray(a);          2.forEac ...

  • WEB前端第二十六课——js数组

    WEB前端第二十六课——js数组

  • 浅谈js数组中的length属性

    前言 一位正在学习前端的菜鸟,虽菜,但还未放弃. 内容 首先,我们都知道每个数组都有一个length属性 这个length属性一般我们用来循环遍历的约束,一般我们都会把他认为是该数组里面有几个元素这个 ...

  • Js数组对象中每一项值value相加

    假设有这么一条数据 const data = [ { "15日": 0, "27日": 0, "13日": 0, "25日&quo ...

  • JS 数组转对象 对象转数组 对象数组互相转换 数组对象互相转换

    JS 数组转对象 对象转数组  对象数组互相转换  数组对象互相转换 声明一个函数,arr_obj ,里面接收一个参数,参数类型只接受对象或者数组 如果没有传递任何参数  或者 传递的参数类型不符合要 ...

  • JS数组方法大全

    一.在使用数组的方法之前,需要先创建数组,创建数组有以下方式: 字面量方式(json方式) //demo1:不省略initial参数,回调函数没有返回值 var arr = [10,20,30,40, ...