继续对数组进行学习和总结
数组中有很多方法,在继上次总结的数组语法中已经详细的讨论了数组中一些常用的方法,本次继续总结完善数组的一些新功能方法。
数组Array.of方法
let nums = Array.of(1);
console.log(nums); //[1]
let nums2 = Array.of(1,2,3,4,5);
console.log(nums2); //[1, 2, 3, 4, 5]
//使用Array.of方法复制已有的数组(...)运算符
let nums3 = Array.of(...nums2);
console.log(nums3); //[1, 2, 3, 4, 5]
fill方法
//fill方法用静态值填充数组。
//nums.fill使nums数组所有位置上的值都会变成0([0,0,0,0,0,0])
let nums = [1,2,3,4,5,6];
nums.fill(0);
console.log(nums); //[0, 0, 0, 0, 0, 0]
除此之外,我们还可以指定开始填充索引以及结束填充索引。
当只指定开始索引时,第二个参数表示开始填充索引,第一个参数表示填充值。
当开始索引和结束索引都指定时,第二个参数表示开始填充索引(包含),第三个参数表示结束填充索引(不包含),第一个参数表示填充值。
nums.fill(2,1);
console.log(nums); //[0, 2, 2, 2, 2, 2]
nums.fill(1,3,5);
console.log(nums); //[0, 2, 2, 1, 1, 2]
//创建数组并初始化值时,fill方法非常好用,例如创建一个长度为6,所有值都为1的数组,代码如下:
let st = new Array(6).fill(1);
console.log(st); //[1, 1, 1, 1, 1, 1]
排序元素(sort)
(升序)
定义一个比较函数,接收二个参数,如果第一个参数应该位于第二个参数之前则返回一个负数,如果第一个参数应该位于第二个之后则返回一个正数,如果二个参数相等则返回0;
let nums = [14,10,11,12,13,2,3,4];
function com(a,b){
if(a<b){
return -1;
}
if(a>b){
return 1;
}
return 0;
}
nums.sort(com)
console.log(nums); //[1, 2, 3, 4, 10, 11, 12, 13]
输出数组为字符串
将数组所有元素输出为一个字符串,可以用 toString 和 join
let nums = [1,2,3,4,5,6];
console.log(nums.toString()); //1,2,3,4,5,6
console.log(nums.join("-")); //1-2-3-4-5-6
小结
通过本次和上次详细的总结了最常用的数据结构:数组。详细的解释了如何声明和初始化数组,给数组赋值,以及添加和删除数组元素,还有一些数组的常用方法都详细的解释和代码演示,这些方法对以后编写自己的算法很有用。