如何将数组定义在flash中
2个回答
展开全部
var arr = new Array();//第一种; 定义一个数组,并初始化它为空数组
var arr2 = [];//第二种; 定义一个数组,并给它赋一个空值
var arr3:Array;//第三种; 只是单纯定义一个数组,但不赋值。也就是在内存里只申请一个首地址,但没有定义存储长度。
//arr = val_s.split(",");
//arr2 = val_s.split(",");
//arr3 = val_s.split(",");//三种都成功
前两个不说了,arr3 = val_s.split(",")就是把一个数组赋给了刚才定义的数组,把val_s.split(",");的首地址和存储空间给了arr3,也就是首地址和存储长度都有了,所以是肯定成功的
但是这里:arr3[i] = val_a[i];//失败 返回undefined
arr3本身只是一个首地址,没有任何空间可以存储数据。arr3[i]调取的是这个数组的第i个存储位置,所以肯定是没有任何意义的。
另外,定义数组必须初始化,前两个在定义的同时就已经初始化了,但第三个只是定义 没有初始化,所以不能直接调用它的存储空间。
var arr2 = [];//第二种; 定义一个数组,并给它赋一个空值
var arr3:Array;//第三种; 只是单纯定义一个数组,但不赋值。也就是在内存里只申请一个首地址,但没有定义存储长度。
//arr = val_s.split(",");
//arr2 = val_s.split(",");
//arr3 = val_s.split(",");//三种都成功
前两个不说了,arr3 = val_s.split(",")就是把一个数组赋给了刚才定义的数组,把val_s.split(",");的首地址和存储空间给了arr3,也就是首地址和存储长度都有了,所以是肯定成功的
但是这里:arr3[i] = val_a[i];//失败 返回undefined
arr3本身只是一个首地址,没有任何空间可以存储数据。arr3[i]调取的是这个数组的第i个存储位置,所以肯定是没有任何意义的。
另外,定义数组必须初始化,前两个在定义的同时就已经初始化了,但第三个只是定义 没有初始化,所以不能直接调用它的存储空间。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询