在JavaScript中,我们简单的把所有数据类型分为两个大类,基本数据类型和复杂数据类型
◆基本数据类型:number,string,boolean,undefined,null
◆复杂数据类型:object,function,array…
数组的创建:
1、直接使用字面量的方式创建一个数组
创建一个空数组
var arr = []
创建一个有内容的数组
var arr1 = [1,2,3]
2、使用js的内置构造函数Array创建一个数组
创建一个空数组
var arr = new Array()
创建一个长度为10的数组
var arr1 = new Array(10)
创建一个有内容的数组
var arr2 = new Array(1,2,3)
数组的length
length就是表示数组的长度,数组里边有多少个成员,length就是多少
所以我们一般查看一个数组的长度直接arr.length就可以知道数组的长度
数据类型之间存储的区别(重点)
我们区分了基本数据类型和复杂数据类型,那么它们之间就一定会存在一些区别。而他们最大的区别就是在存储上的区别。
我们存储空间分为两种 “堆” 和 “栈”
◇栈:主要存储基本数据类型的内容
◇堆:主要存储复杂数据类型的内容
基本数据类型是“值”之间的比较
var num = 1
var str = '1'
alert(num == str) //结果是true
复杂数据类型是“地址”之间的比较
var obj = {name:'jack'}
var obj1 = {name:'jack'}
alert(obj == obj1) //false
虽然两个对象里边的键值对都相同,但是obj和obj1两个对象指向的地址不同
数组的常用方法:
1、.push() 在数组末尾追加一个元素
var arr = [1,2,3]
arr.push(3)
alert(arr) //[1,2,3,4]
2、.pop 删除数组末尾的一个元素
var arr = [1,2,3]
arr.pop()
alert(arr) //[1,2]
3、.shift() 删除数组最前边的一个元素
var arr = [1,2,3]
arr.shift()
alert(arr) //[2,3]
4、.unshift() 在数组的最前边添加一个元素
5、splice 截取数组中的某些内容,按照数组的索引来截取
.splice(从哪一个索引位置开始,截取多少个,替换的新元素)
替换的新元素没有写时,是直接截取多少个
var arr1 = [1,2,3,4,5]
var new1 = arr.aplice(0,2)
//new1的值为[1,2] arr1的值为[3,4,5]
var arr2 = [1,2,3,4,5]
var new2 = arr2.splice(0,1,"替换")
//new2是值为[1],arr2的值为["替换",2,3,4,5]
6、reverse 数组的反转
var arr = [1,2,3]
arr.reverse() //arr为[3,2,1]
7、sort 数组排序
8、concat 把多个数组进行拼接(不会改变原数组)
9、join 数组里边的每一项内容连接起来,并转换为字符串
不会改变原数组,join()在括号中填写分隔数组每一个元素的字符
var arr = [1,2,3]
var str = arr.join("-")
//arr的值为[1,2,3] ,str的值为"1-2-3"