JavaSript数组的定义及方法

数组的创建方式

var str = new Array();

或者

var str = ["1","2","3"];

数组的检测方法

var str = ["red","green","blue"]
console.log(str instanceof Array)  // 返回值为true

或者

var str = ["red","green","blue"]
console.log(Array.isArray(str))  // 返回值为true

转换方法

toStringtoLocaleString的返回值相同,都是每个值的字符串形成拼接,用逗号隔开。
valueOf的返回值还是数组。
例:

var str =["red","blue","green"]
        console.log(str.toString())   // 返回值为:red,blue,green
        console.log(str.toLocaleString())   // 返回值为:red,blue,green
        console.log(str.valueOf())  // 返回值为:(3) ["red", "blue", "green"]

join() 数组转换字符串

var str =["red","blue","green"]
    console.log(str.join(","))  // 输出值为:red,blue,green
    console.log(str.join("|"))  //输出值为:red | blue | green

括号里不加任何参数,则所有值连在一起。

栈方法

栈是一种后进先出(LIFO:last in frist to),最后进来的先出去。
push():在数组的末尾添加任意参数,返回值为新的数组长度。

var str =["red","blue","green"]
      console.log(str.push("1"))  // 输出值为:4;
      console.log(str)  // 输出值为 (4) ["red", "blue", "green", "1"]

pop():在数组的末尾删除任意参数,返回值为被删除的项。

var str =["red","blue","green"]
      console.log(str.pop())  // 输出值为:green;
      console.log(str)  // 输出值为:(4) ["red", "blue"]

队列方法

队列方法是一种先进先出(FIFO:frist in frist out),先进来的先出去。
unshift:在数组的最前端添加参数,返回值为新的数组长度。

var str =["red","blue","green"]
      console.log(str.unshift("1"))  // 输出值为:4;
       console.log(str)  // 输出值为 (4) ["1","red", "blue", "green"]

shift:删除数组最前端的一项,返回值为被删除的项。

var str =["red","blue","green"]
      console.log(str.shift())  // 输出值为:red;
      console.log(str)  // 输出值为:(2) [ "blue", "green" ]

reverce翻转数组

var a = [2,3,4,5]
       console.log(a.reverce())  // 输出值为: [5,4,3,2]

sort排序

var a = [5,3,4,6,8]
      console.log(a.sort(function (a,b){
                    return a-b   // 升序
}))         // 输出值为 (5) [3, 4, 5, 6, 8];
         console.log(a.sort(function (a,b){
                    return b-a   // 降序
}))         // 输出值为 (5) [8, 6, 5, 4, 3]

操作方法

concat:连接两个或几个数组,返回值为连接后新的数组。
var a = [3,4,5]
var b = ["red","blue"]
        console.log(a.concat(b))  // 输出值为:(5) [3, 4, 5, "red", "blue"]
slice(start,end):用于提取或截取数组的某一个部分,返回值为被截取的部分。

括号内的值都为数组的索引值(下标),只能从左往右进行截取,返回的值从start开始,结束语end的前一项。如果括号内只有一个值,则返回的值为从开始索引值的项到结束。

var a = [3,4,5,6,7]
       console.log(a.slice(1,3))  // 输出值为:4,5
       console.log(a.slice(1))  // 输出值为:4,5,6,7
splice(start,howmany,jia1,jia2……):用于添加,删除和替换数组中的元素。

括号内的第一个值为数组的索引值(下标),第二个值为个数,后面的值都为要添加的项。

  • 添加:
    添加时,返回的值为 [ ]空,被添加的项会被添加在start的前面。
var a = ["三国演义","西游记","红楼梦"]
        console.log(a.splice(1,0,"活着"))    // 输出值为:[ ] 空
        console.log(a)  // 输出值:(4) ["三国演义", "活着", "西游记", "红楼梦"]
  • 删除:
    删除时,返回的值为被删除的项。
var a = ["三国演义","西游记","红楼梦"]
        console.log(a.splice(1,2))    // 输出值为:(2) ["西游记", "红楼梦"]
        console.log(a)  // 输出值:["三国演义"]
  • 替换:
    替换时,返回的值为被替换掉的项。
var a = ["三国演义","西游记","红楼梦"]
        console.log(a.splice(1,1,"活着"))    // 输出值为:["西游记"]
        console.log(a)  // 输出值:(3) ["三国演义", "活着", "红楼梦"]

你可能感兴趣的:(JavaSript数组的定义及方法)