码迷,mamicode.com
首页 > 编程语言 > 详细

数组常用的api

时间:2019-08-21 23:18:00      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:nbsp   对象   堆内存   写法   data-   star   功能   compare   数据类型   

数组

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

怎么理解:

一个变量 存储多个值

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

声明

语法糖:  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

标签:nbsp   对象   堆内存   写法   data-   star   功能   compare   数据类型   

原文地址:https://www.cnblogs.com/cxf1214/p/11391762.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!