数组是可以在内存中连续存储多个元素的结构
数组的下标索引从0开始.通过length可获取数组的总长度。
数组的上下界 [0 , myarr.length-1]
第一种创建方式: 通过构造函数创建一个空数组
var myarr = new Array();
myarr[0] = "hello";
myarr[3] = 1;
alert(myarr.length)
alert(myarr[2]);
第二种创建方式 创建的同时赋值
var myarr = new Array("hello","1",11);
alert(myarr.length);//3
第三种创建方式 创建的同时 设置长度
var myarr = new Array(2);
alert(myarr.length);
第四种创建方式 字面量的形式
var myarr = [2,5,"hh","haha",10,0];
alert(myarr.length)
alert(myarr);
alert(myarr[1])
for(var i = 0;i < myarr.length;i++){
alert(myarr[i]);
}
通过下标进行访问数组
遍历数组的几种方法
总共有四种:第一种for循环
第二种:for (var 下标 in 数组){
}
新增的两种方法:
数组名.forEach(function(value ,index ,item){
console.log(value,index,item);
})
var a=数组名.map(function(value ,index ,item){
console.log(value,index,item);
return value;
})
console.log(a);
数组的方法:
1:删除
alert(myarr.pop());//在数组的尾部删除一个元素 返回值是删除的元素
alert(myarr);
alert(myarr.shift());在数组的头部删除一个元素 返回值是删除的元素
2:增加
alert(myarr.push("hello","world"));push() 向数组尾部里增加新元素 返回值是新数组的长度
3:排序
数组对象.sort()
sort方法里的参数是可选的,省略参数时,数组是按照Unicode编码来排序的 A-Z a-z 0-9
sort(排序函数名) sort方法里有参数时,是一个有参数的函数
例子
var myarr = [21,17,2,6,4];document.write("原来的数组" + myarr);function sortNum(b,x){ //排序函数里的参数 如果b在x的前面,返回b-x,得到的是一个小于0的数,按升序排(从小到大)// 排序函数里的参数 如果b在x的前面,返回x-b,得到的是一个大于0的数,按降序排(从大到小)return x - b;}document.write("
排序后的新数组" + myarr.sort(sortNum));
4:颠倒
alert(myarr.reverse());//整个颠倒数组里的元素
5:数组对象.splice(参数1,参数2,参数3) 返回是:删除的元素
参数1:必需的 从哪里开始删除的下标 也可以为负 -1最后一个元素 -2倒数第二个元素
参数2:必需的 删除的个数
参数3:可选的 在参数1的位置处,增加一个或多个项目
var myarr = ["aa",1,4,0,"bb"];
alert(myarr.splice(-2,2));
alert(myarr.splice(1,2,"hello",1,3));
alert(myarr);
6 concat和join
var a = [1,4,2];
var b = ["aa",2];
var c = ["bb",1];
alert(a.concat("hello",3));
alert(a.concat(b,c));
alert(a.join("-"));
alert(a.join("."));
对象
var person = new Object();1,通过构造函数来创建对象
var person = {}; 2,字面量的方式创建对象