数组常用的api

Posted cxf1214

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组常用的api相关的知识,希望对你有一定的参考价值。

数组

数组是有序的元素序列,可以存储多个值

怎么理解:

一个变量 存储多个值

数组是线性的:除了第一个元素,每一个元素都有一个前驱元素,除了最后一个元素,,每一个元素都有一个后驱元素

声明

语法糖:  array
var arr = [];
  var arr=[1,2,3,4,5,6,87];
构造函数写法:
var arr = new Array();
var arr = new Array(1,2,3,4,5);

使用

如何获取数组中的元素
因为数组是线性的,所以 数组中的每一个元素,在数组中都有自己的位置 如第一个 最后一个 第二个...
位置:下标   从0开始
获取数组中的元素
arr[下标]

数组length属性

获取数组的长度 (元素的个数)

数组元素的赋值

arr[下标]=值
1,原来就有 覆盖原来的值
2,原来没有 定义个一个新的位置 上定义的一个新值

复合数据类型与基本数据类型区别

内存:存储 程序运行中的数据
变量:内存中独立的存储空间
栈内存
基本数据类型
堆内存
复合数据类型
引用类型在进行比较时是引用(地址)比较

技术图片

技术图片

技术图片

 

var arr = [1,2,3]
?
alert(arr[4]);
访问数组中的元素时,如果长度超出了就是
undefined


?

数组常用api

api  Application Programming Interface
应用程序接口
对象的方法
push()
末尾添加 可以是以,隔开的多个值
pop()
末尾删除 调用一次就删除一个
返回值:就是删除的数组元素
unshift()
开头添加 可以以,隔开的多个值
shift()
开头删除
返回值:删除的元素
总结:以上四个api都是会直接改变原数组 不是只读的
?
concat 连接数组 (将两个小的数组或者一个数组和其他值 拼成一个大的数组)
var newArr = arr.concat(连接的值);
?
reverse() 不是 颠倒数组 不是排序
var arr=[2,5,7,8];
arr.reverse()   [8,7,5,2]

sort() 排序
默认是按照字符串 进行排序 (首字符大小 进行排序)
如果需要按照数字排序:需要 一个 排序规则的函数
function compare(a,b)
return a-b; //升序
return b-a; //降序

join() 将数组转换成字符串
注意:join可以传参 ,参数是值 分隔符 ,如果不传参 默认是 ,分割
只读的
splice() 不是只读  
功能: 删除 替换 插入
第一个参数 : 从哪里开始删除
第二个参数:删除几个
后面的参数 : 插入的值
总结:如果参数只有两个 执行的是删除操作
如果有多个参数主要看 第二个参数
如果为0 执行的是插入
如果不为0执行的是替换
slice(starti[,endi+1]) 只读 切割数组 得到子数组
starti:开始截取的位置 下标
endi:结束的位置
总结:含头不含尾
如果第二个参数省略,默认从starti开始后面全部截取

 

 

以上是关于数组常用的api的主要内容,如果未能解决你的问题,请参考以下文章

手把手搞懂JavaScript数组的常用API

数组常用api

数组常用的api

数组和字符串的常用API

数组和对象常用API

JavaScript数组常用API方法汇总