数组是什么
- 数组是一种用于存储多个值的数据类型。
- 数组可以储存不同数据类型的数据
创建数组的方法
1.直接量法
var[数组名 = new Array()
数组元素:数组中存储的每个数据,都可以叫数组的元素,比如:存储了3个数据,数组中3个元素
数组索引(下标):用来存储或者访问数组中的数据的,索引从0开始,到长度减1结束
数组的索引和数组的长度的关系:长度减1就是最大的索引值
数组长度:就是数组的元素的个数,比如有3个元素,就说,这个数组的长度是3
示例(原则:用最简单的例子称此案知识点原理)
//定义了一个空的数组
var arr1 = new Array()
//定义了一个长度为6的数组
var arr2 = new Array(6)
//输出数组的每个值都是undefined
console.log( arr2)
//可以直接定义数组的具体值
var arr3 = new Array(1,2,3,4,5)
console.log(arr3) // [1,2,3,4,5];
2.构造函数
var 数组名 = [ ]
var array = [ ]
示例
//定义空数组
var array = [ ]
var arr = [5, 2,0,1,3,1,4]
数组的特点
1、java数组有固定的长度,创建后不可改变。并且其中的数据必须是同类型的数据,不同类型的数据不能够出现在同一个数组之中,相应排列次序也需要按照顺序进行。
2、数组并没有规定类型,任何同类型数据都可以形成一个数组,且数组之中的每一个元素在数组之中都是连续分配空间。
如何访问数组
使用方括号访问数组元素
const arr = [1,2,3]
arr[0]//1
arr[1]//2
arr[2]//3
arr[3]//undefined
如何遍历数组
使用for循环遍历数组
var arr1 = [1,2,3]
var arr2 = []//4,5,6
for(var i = 0;i<arr1.length;i++){
arr2[i] = arr1[i] + 3
}
Array.length
定义
array.length()
返回数组长度
语法
array.length(数组名)
1.主人是数字
2.length是属性,没有参数
返回值
数字长度
注意:length-1是任何一个数组的最后一个元素
[ ]空数组的length是0
示例
var arr = ['clx','xyl','wxy','wl']
const arr2 = new Array('clx','xyl','wxy','wl')
console.log(arr.length)
console.log(arr2.length)
Array.isArray()
定义
array.isArray()
方法用于检测是否是数组。
语法
Array.isArray(value)
- value: 要检测的值
返回值
true : 如果是数组,返回true
false: 如果不是数组,返回false
示例
var str = 'hello wolrd'
var arr = [1,2,3]
console.log(Array.isArray(str))// false
console.log(Array.isArray(arr))// true
Array.unshift()
定义
array.unshift()
将新元素添加到数组的开头,并返回新的长度。
提示:如需在数组末尾添加新项,请使用 push()
方法。
语法
array.unshift(item1, item2, ..., itemX)
- item1, item2, ..., itemX: 要添加的值
返回值
- 数值,表示数组的新长度。
示例
var arr = ['Banana', 'Orange', 'Apple']
arr.unshift('Mango')
console.log(arr)//['Mango','Banana', 'Orange', 'Apple']
Array.pop()
定义
array.pop()
方法用于删除数组最后一个元素
语法
array.pop()
- 无参数
返回值
- 返回删除元素
示例
var arr = [1,2,3]
var str = arr.pop()
console.log(str) //3
Array.shift()
定义
array.shift()
方法用于删除数组第一个元素
语法
array.shift()
- 无参数
返回值
- 返回删除元素
示例
var arr = [1,2,3]
var str = arr.shift()
console.log(str) //1
Array.reverse()
定义
array.reverse()
反转数组中元素的顺序
语法
array.reverse()
- 无参数
返回值
- 返回翻转后的数组
示例
var arr = [1,2,3]
arr.reverse()
console.log(arr) // [3,2,1]
Array.sort()
定义
array.sort()
反转数组中元素的顺序
语法
array.sort(compareFunction)
-
compareFunction
可选。定义替代排序顺序的函数。工作原理:sort() 方法比较两个值时,将值发送给比较函数,
比较函数应返回负值、零值或正值。例如:function(a, b){return a-b}
根据返回的(负、零、正)值对值进行排序
返回值
- 排序后的原数组
示例
// [40,60,50]
var arr = [40,60,50]
arr.sort(function(a,b){
return a > b
})
console.log(arr) // [40,50,60]
示例
// [40,60,50]
var arr = [40,60,50]
arr.sort(function(a,b){
return a < b
})
console.log(arr) // [60,50,40]
示例
// [40,60,50]
var arr = [40,60,50]
arr.sort(function(a,b){
return a = b
})
console.log(arr) // [40,60,50]
该函数计算 40-100,并返回 -60(负值)
sort 函数会将 40 排序为小于 100 的值