数组的重要性在这里我就不言而喻了,但是在使用数组过程中我遇到过各种问题,比如申明,赋值,对象等等……
在这里我将一一用例子阐述说明
一、如何申明数组
1、指定数组初始化元素个数
var arrayDemo1 =new Array(4); //申明数组
arrayDemo1[0] = "Jonkcy"; //给数组对象赋值
arrayDemo1[1] = 22;
arrayDemo1[2] = "teacher";
arrayDemo1[3] = 1;
alert("姓名"+arrayDemo1[0]);
2、指定数组不限定元素个数
var arrayDemo1 =new Array(); //申明数组
arrayDemo1[0] = "Jonkcy"; //给数组对象赋值
arrayDemo1[1] = 22;
arrayDemo1[2] = "teacher";
arrayDemo1[3] = 1;
alert("姓名"+arrayDemo1[0]);
3、直接给数组进行赋值
var arrayDemo1 =new Array("Joncky",24,"teacher",1);
//var arrayDeomo=["Joncky",24,"teacher",1]
alert("姓名:"+arrayDemo1[1]);
以上三种情况都是传统数组,只能通过数组给其元素自动分配角标索引然后取值,这将给我们很大的困扰,现在我们给数组进行拓展
4、将数组对象给每个元素指定别名,简称关联性数组,说白点就是讲数组的角标索引更换成将字符串代替角标,这样的好处我们就能不用记忆数组的顺序,而是直接通过数组的别名来获取值
var arrayDemo1=new Array();
arrayDemo1["sname"]="Joncky";
arrayDemo1["age"]=23;
arrayDemo1["sex"]=1;
alert(arrayDemo1.sname);
5、关联性数组之间的再次关联
var arrayDemo2=new Array();
var arrayDemo1=new Array();
arrayDemo1["sname"]="Joncky";
arrayDemo1["age"]=23;
arrayDemo1["sex"]=1;
arrayDemo2["person1"]=arrayDemo1;
alert(arrayDemo2.person1["sname"]);
思路:定义一个arrayDemo2的数组,将arrayDemo1数组对象赋值给arrayDemo2的person1
以上代码看起来有点杂论,其次我们应该简单说下对象,首先我们已经给arrayDemo1定义的是一个数组对象,但是组合成数组元素的成员其实可以看成每个对象的实例,已经改变了数组对象的本质,这个时候我们应该使用通用对象Object
6、通过Object对象改变传统数组
dow.onload = function() {
//将两个对象加入到一个数组里面,这样数组类型就是object类型
var demo=new Array();
var arrayDemo1=new Object();
arrayDemo1.sname="Joncky";
arrayDemo1.age=23;
arrayDemo1.sex=1;
var arrayDemo2=new Object();
arrayDemo1.sname="Joncky";
arrayDemo1.age=23;
arrayDemo1.sex=1;
demo[0]=arrayDemo1;
demo[1]=arrayDemo2;
alert(demo[0].age);
7、对象的书写方式多样化
var demo={}; //对象的书写一般以花括号开始结尾
var demo1={name:"Joncky",age:14,sex:"1",ismar:false}
demo.first=demo1;
alert(demo.first.ismar)
-----------------------------------------------------
var demo1={name:"Joncky",age:14,sex:"1",ismar:false}
demo.first=demo1;
//获取对象属性值有两种写法:
//A:demo.first.age
//B:demo.first["age"]
循环数组获取值可以通过键值对的形式获取 如for(var i in obj) 其中i值键 obj[i]值