js Array数组方法

一、数组(一维)

用一个变量表示一组值的集合,每个值都是数组中的一个元素

字符串、数组和布尔值都是标量,标量只能有一个值。
如果需要一个变量存储一组值,就需要使用数组array

二、数组的声明方法(有三种):

  • 第一种:直接声明数组,初始值用方括号括起来
var a=[1,2,3,4,5];
  • 第二种:使用Array关键字声明,同时可指定数组的长度(也可以不写)
    接下来向数组元素内进行填充:此时需要使用到数组元素的下标

需注意:数组元素下标从左到右由0开始,从右至左由-1开始(下标必须用[ ]括起来)

var b=Array(4);
//var b=Array(0);
b[0]='1';
b[1]='2';
b[2]='3';
b[3]='4';
  • 第三种:声明数组的同时对它进行填充(需要用逗号把各个元素隔开)
var c=Array('1','2','3','4');

三、遍历数组的方法(两种)

  1. 使用简单for循环方法
//遍历输出数组a和a内元素的值类型
var a=[1,"true",true,"aaa",undefined,null];
for(var i=0;i<a.length;i++){
	console.log(a[i]+'---'+typeof a[i]);
}
  1. 使用for in 方法,不需要数组长度等属性,更方便
//遍历输出数组b的值及元素的类型
var b=[11,'a','ccc',true,2323];
for(var x in b){
	console.log(b[x]+'---'+typeof(b[x]));
}

四、js数组方法

1.valueOf()

该方法返回Array对象的原始值

var arr1=['10','22',456,'65',34,'66'];
document.write("valueOf()的结果是:"+arr1.valueOf());

~结果展示:
在这里插入图片描述

2.toString()

该方法可以把数组转换为字符串,并返回结果

var arr2=[11,'a','ccc',true,3456];
document.write("toString()的结果是:"+arr2.toString());

~结果展示:
在这里插入图片描述

3.toLocaleString()

该返回数组中的每个元素本地化表示形式

var arr2=[11,'a','ccc',true,3456];
document.write("toLocaleString()的结果是:"+arr2.toLocaleString());

~结果展示:
在这里插入图片描述

4.join(seperator)

该方法返回一个字符串,有每个元素转换而成的字符串使用指定的seperator拼接而成

var arr2=[11,'a','ccc',true,3456];
document.write("join()的结果是:"+arr2.join('.'));//用‘.’拼接数组内的元素

~结果展示:
在这里插入图片描述

5.concat()

该方法可以拼接两个或两个以上的数组,也可以添加若干个值,最后生成的是一个全新的数组

var arr4=arr1.concat(444,'lisi',arr2);
document.rite("新数组的内容:"+arr4+"新数组的长度:"+arr4.length);

~结果展示:
在这里插入图片描述

6.slice(start,end)

该方法获取数组中指定区间的值(左闭右开)

var arr5=arr4.slice(0,4); //取元素下标为0-3的值
document.write("slice()获取后的数组为:"+arr5+'<br>');
var arr5_1=arr4.slice(8)//取元素下标为8以后的所有值(包括8)
document.write("slice()获取后的子数组为:"+arr5_1+'<br>');
var arr5_2=arr4.slice(-5,-2);//取元素下标由后往前数第5到第3位的值(不包括2),负的由右到左从-1开始
document.write("slice()获取后的子数组为:"+arr5_2);

~结果展示:
在这里插入图片描述

7.splice(start,count,e1,e2[,…])

该方法可对数组进行增删改查操作

var arr6=[1,2,3,4,5];
document.write("原数组为:"+arr6+'<br>');
 //截取元素下标以2开始的2个数,并以70,8,12进行替换,将截取的元素赋值给arr7
var arr7=arr6.splice(2,2,70,8,12);
document.write("裁剪之后的原数组是:"+arr6+'<br>');
document.write("splice()截取的值为:"+arr7);

~结果展示:
在这里插入图片描述

8.reverse()

该方法实现颠倒数组中的元素的顺序

document.write("原值为:"+arr6+'<br>');
arr7=arr6.reverse();
document.write("颠倒之后的结果为:"+arr7);

~结果展示:
在这里插入图片描述

9.sort()

快速排序的方法,只能排字符

要排数字就用使用“比较函数”调用
从小到大排序 a-b ,从大到小排序 b-a

function sortby(a,b){
	return b-a;
}
// 若b>a,则返回一个大于0的数
// 若b<a,则返回一个小于0的数
document.write("原数组为:"+arr7+'<br>');
document.write("sort()排序后为:"+arr7.sort(sortby));

~结果展示:
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值