zoukankan      html  css  js  c++  java
  • 数组小细节

    var a=[];
    a[1]=1;
    a[13]=13;
    a["14"]=14;
    a["footer"]="footer";
    console.log(a[2]);                   //undefined
    console.log(a["14"]);              //14
    console.log(a[14]);                //14
    console.log(a.footer);            //"footer"
    console.log(a.length);           //"15"
    delete a[13];                         
    console.log(a[13]);               //undefined
    console.log(a.length);          //15
    console.log(a[footer]);         //footer is not defined

    结合这道题目来阐述一些数组的小细节:

    1.稀疏数组即含有空白或空缺单元的数组,未声明的值如:a[2]值为undefined。

    2.如果字符串键值能够被强制类型转换为十进制数字的话,它就会被当作数字索引来处理,如:a["14"]值为14等于a[14]。

    3.虽然数组通过数字进行索引,但是它们也是对象,所以也可以包含字符串键值和属性,如:a["footer"]值为"footer"等于a.footer。

    4.虽然可以包含字符串键值和属性,但是却不会影响数组的长度,所以a["footer"]并不会影响长度,如a.length值为15,因为声明过了a[14]。

    5.delete可以将单元从数组中删除,但是并不会影响length,所以delete a[13]后,a[13]值为undefined,a.length依然为15。

    6.虽然我们声明了a["footer"],但并未声明footer,所以a[footer]会报错,footer is not defined。

  • 相关阅读:
    用shareSDK实现的简单分享
    可实现随意切换的button同时随切换改变title的颜色
    创建UITabBarController
    git 常用命令
    实现友盟分享
    IOS 打印语句
    ios 的frame,bound,center
    IOS绘图
    iPhone App 上架流程
    ios 常用字符串的操作
  • 原文地址:https://www.cnblogs.com/xinyouhunran/p/13516677.html
Copyright © 2011-2022 走看看