A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 大山哥哥 于 2016-12-30 14:06 编辑

javaScript中的数组访问及长度问题


在学习java基础的过程中大家必不可少的要学习java中的数组.那么咱们都知道在java中数组是不可变的.以至于大家形成了一个固定的思维模式.只要听到数组就认为是不可变的.当然在咱们学习javaScript时在javaScript中也有数组.那么javaScript中的数组是怎么样的呢?
     要学习javaSrcipt中的数组首先咱们要明确两点:
       1.在javaSrcipt中数组是一种有序元素的集合.
       2.在javaSrcipt中数组的长度是可变的.只要将元素加入到数组的尾部,数组的长度就会自动增长.可以自由改写数组中的每一个元素.
ok 那么接下来咱们就具体的学习一下javaSrcipt中的数组.
   1.在javaSrcipt中数组的创建.
           两种方式:
                    第一种:var arr = new Array();
                    第二种:var  arr = [];
不含有元素的数组长度为零.在java中数组的类型必须一致而在javaSrcipt中则是有着高自由度.也就是说 在java中的数组类型必须要一致而在javaScript中这可以不用一致.
  2.数组的元素访问.
    2.1 在javaScript中可以通过括号运算符([]运算符)来访问数组.[]中写的是角标的数值.角标由0开始,如果该角标不存在则获得undefined值
    如:
[JavaScript] 纯文本查看 复制代码
var arr =[3,4,5]
print(arr[0],arr[1],arr[2],arr[3],)
3 4 5 undefined;

   2.2  如果将中括号写在赋值表达式的左侧,怎可以用来计算,或者是改写相应的元素.
                       //接上面代码
                          如:
[JavaScript] 纯文本查看 复制代码
           arr[2] = arr[2] *2 ;                       // 改写下标为2的元素
           10
           print(arr);
           3,4,10

    2.3 如果赋值表达式左侧所写的下标超出了元素数量.则会向数组中增加新的元素,新增的元素下标值不必紧接着现有元素的个数.可以跳过元素.当跳过元素被访问是则或返回undefined.
          //接上面代码
           如:
[JavaScript] 纯文本查看 复制代码
 
                arr[3] = 20;                           // 元素数量为3的时候,如果赋值给下标为3的元素(第四个元素),就会新增一个元素.
                print(arr)
                3,4,10,20
                arr[10] =100;                        // 如果对下标为10(第11个元素)进行赋值,元素的数量就会变成11.
                100
                print(arr)
                3,4,10,20,,,,,,,100
                print(arr.length)                   // length获取数组的长度
                print(arr[4])                        // 如果访问被跳过的元素,怎返回undefined
                undefined 

  3 数组的长度
            3.1 获取数组的长度
              如:
[JavaScript] 纯文本查看 复制代码
 
                   var arr = [2,,,,3];                                    //元素间有空隙额数组(元素数量为2)
                   print(arr.length);                                  // 与元素的数量不同,数组的长度为5
                   5

            3.2数组length值的自动计算.
            
[JavaScript] 纯文本查看 复制代码
 
                var arr = ['zero','one','two'];
                arr[arr.length] = 'three';                             //借助arr.length 向数组末尾添加元素是一种习惯用法.
                print(arr)
                zero one two three
                print(arr.length)                                           //自动增长
                4
                arr[100] = 'x';                                              // 添加元素时跳过了一些中间元素
                print(arr.length)                                          //自动增长
                101


                 3.2 更改数组的长度
                  
[JavaScript] 纯文本查看 复制代码
    
                        var arr = ['zero','one','two'];
                        arr.length = 2;                                     //将数组的长度缩短
                        print(arr)
                        zero,one

                        arr.length = 3                             // 恢复(加长)数组至原来的长度
                        print(arr)                                    // 恢复的部分是undefined值
                        type of arr[2]
                        undefined


7 个回复

正序浏览
回复 使用道具 举报
henbucuo ,值得收藏
回复 使用道具 举报
赞赞赞!!!!!
回复 使用道具 举报
“加油吧”
回复 使用道具 举报
赞赞赞!!!!!!!11
回复 使用道具 举报
好帖,谢谢分享
回复 使用道具 举报

回帖奖励 +1

赞赞赞!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马