2.重学javascript 对象和数组

什么是对象,其实就是一种类型,即引用类型。

一、创建Object类型有两种。

  ①使用new运算符

<script type="text/javascript">
   var box = new Object();
   box.name = '李四';
   box.age = 28;
   //new 关键字可以省略
   var box = Object();
</script>

  ②字面量表示法(常用的方法)

<script type="text/javascript">
   var box = {
        name: '张三',
        age:28
   };

   //使用字面量及传统赋值方式
   var box={};

   box.name = '张三',
   box.age = 28;
</script>

二、两种属性输出方式

<script type="text/javascript">
   alert(box.age);
   alert(box['age']);
</script>

三、使用delete删除对象属性 

deletebox.name;

四、给对象创建方法

<script type="text/javascript">
    var box = {
        run: function(){
            return '运行';
        }
    };
    alert(box.run());
</script>
<script type="text/javascript">
    //参数是一个对象
    function box(obj){

     //判断属性是否存在
        if(obj.name != undefined) alert(obj.name);
        if(obj.age != undefined) alert(obj.age);
    }
    
    //调用函数传递一个对象
    box({
        name: '王五',
        age: 24
    });
</script>

五、数组

①创建Array类型有两种方式:

  1>.第一种是new运算符(可以省略new) 

<script type="text/javascript">
   
    //创建了一个数组
   var box = new Array();

   //创建一个包含10个元素的数组
   var box = new Array(10);

   //创建一个数组并分配好了元素
   var box = new Array('占三', 28, '工人', '中国');
</script>

  2>.第二种是字面量。

<script type="text/javascript">
    //创建一个空的数组
    var box = [];
    //创建包含元素的数组
    var box = ['王五' ,30, '码农', '中国'];
    //禁止这么做,IE会识别3个元素
    var box = [1,2,];
    //同样,IE的会有识别问题
    var box = [,,,,,,];

    //PS:和Object一样,字面量的写法不会调用Array()构造函数。(Firefox除外)。
</script>

  3>.使用索引下标来读取数组的值

<script type="text/javascript">
    //获取元素个数
    alert(box.length)
    //强制元素个数
    box.length=10; 
    //通过length给数组增加一个元素。
    box[box.length]='JS 技术'; 
</script>

  4>.创建一个稍微复杂一点的数组

<script type="text/javascript">
    var box=[
        { //第一个元素是一个对象
        name:'李炎恢',
        age:28,
        run:function(){
        return'run 了';
        }
        },
        ['马云','李彦宏',new Object()],//第二个元素是数组
        '江苏', //第三个元素是字符串
        25+25, //第四个元素是数值
        new Array(1,2,3) //第五个元素是数组
        ];
    alert(box);
</script>

PS:数组最多可包含4294967295个元素,超出即会发生异常。

原文地址:https://www.cnblogs.com/suihui/p/3292784.html