JavaScript之数组

数组的重要性在这里我就不言而喻了,但是在使用数组过程中我遇到过各种问题,比如申明,赋值,对象等等……

在这里我将一一用例子阐述说明

一、如何申明数组

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]值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值