美文网首页
JavaScript中的数组

JavaScript中的数组

作者: Kaina_ | 来源:发表于2019-03-11 14:35 被阅读0次

定义数组

var arr = new Array();
//或定义数组的时候进行赋值
var arr = new Array("one","two","three");
//这样也可以
var arr = ["one", "two", "three"];

数组赋值

arr[0] = "我是第一个值";
arr[1] = "我是第二个";
arr[2] = "我是第三个";

数组操作

取数组长度

数组名称.length

var arr = ["one", "two", "three"];
var arrNum = arr.length;
console.log(arrNum);

注意:length属性是可写的,当赋予其一个值的时候(arr.length = 2),该数组的成员会自动减少到length的长度。因此,清空数组的一个有效办法,就是将数组的length设为0

删数组头

数组名称.shift()

var arr = ["one", "two", "three"];
var strA = arr.shift(); //此时strA的值为:one
console.log(arr);//输出结果:two,three

删除数组中第一个元素,并返回该元素的值,如果数组为空则返回undefined

删数组尾

数组名称.pop()

var arr = ["one", "two", "three"];
var strA = arr.pop(); //此时strA的值为:three
console.log(arr);//输出结果:one,ltwo

删除数组中第一个元素,并返回该元素的值,如果数组为空则返回undefined

从指定位置删除几个数组元素

数组名称.splice(从第几个删除,共删除几个)

var arr = ["one", "two", "three", "four", "five"];
var strA = arr.splice(2,2);//此时strAp的值为:three,four
console.log(arr);//输出:one,two,five

splice会返回删除元素的值
注意:数组下标是从0开始的

从指定位置删除n个值,并插入n个值

数组名称.splice(从第几个删除,共删除几个,插入的值1, 插入的值2,插入的值n)

var arr = ["one", "two", "three", "four", "five"];
var strA = arr.splice(2, 2, "value1", "value2","value3");//此时strA的值:three,four
console.log(arr);//输出:one,two,value1,value2,vlaue3,five

删除 n 个,插入 ≥n 个是可行的

从数组中取出指定数量元素组成新的数组

数组名称.slice(从第几个开始,到第几个结束)

var arr = ["one", "two", "three", "four", "five"];
var arr2 = arr.slice(1,3);
console.log(arr2);//输出:two,three

返回从原数组中指定开始下标到结束下标之间的项组成的新数组, 注意:不包括 end 对应的元素,如果省略 end 将复制 start 之后的所有元素。

合并数组

数组名称.concat("value1”,“value2”,value...)

var arr = ["one", "two", "three"];
var arr2 = arr.concat("value1", "value2");
console.log(arr2);//输出:one, two, three, value1, value2

也可以这样写

var arr = ["one", "two", "three"];
var arr2 = ["value1", "value2"];
var arr3 = arr.concat(arr2);
console.log(arr3);//输出:one, two, three, value1, value2

将新值添加到原数组的后边并返回新的数组

合并数组并返回长度

数组名称.push(“value1”,“value2”,value...)

var arr = ["one", "two", "three"];
var arrNum = arr.push("value1", "value2");
console.log(arrNum);//输出:5

push不支持像concat那样传数组进去

分割数组

数组名称.join(string)

var arr = ["one", "two", "three"];
var strA = arr.join("@");
console.log(strA);//输出:one@two@three

将数组的元素组起一个字符串,以separator为分隔符,省略的话则用默认用逗号为分隔符。

逆向排序数组

数组名称.reverse()
···
var arr = ["one", "two", "three", "four", "five"];
var arr2 = arr.reverse();
console.log(arr2);//输出five,four,three,two,one
···
将数组反序(逆向排序)

数组排序

数组名称.sort()

var arr = ["one", "two", "three", "four", "five"];
var arr2 = arr.sort();
console.log(arr2);//输出:five,four,one,three,two

对数字进行排序

function sortNumber(a,b){
return a-b;
}

var arr = [1,29,398,10,1999,1000,2883];
var arr2 = arr.sort(sortNumber);
console.log(arr2);//输出:1,10,29,398,1000,1999,2883

对数组进行排序,默认情况下是进行升序排列。

相关文章

网友评论

      本文标题:JavaScript中的数组

      本文链接:https://www.haomeiwen.com/subject/egtbpqtx.html