12.数组的定义

//一:数组的定义方式 //方式1.使用new的方式 var arr1 = new Array(); //console.log(arr1); //方式2.指定数组长度.创建数组对象 //初始化的时候,长度为指定的长度,里面都是空的undefined,如果添加元素超过这个长度,则自动扩容 var arr2 = new Array(5); //console.log(arr2); arr2[0] = "三国演义"; arr2[1] = "西游记"; arr2[2] = "水浒传"; arr2[3] = "红楼梦"; arr2[4] = "小林正传"; //console.log(arr2); //方式3.直接传入元素 var arr3 = new Array("西施","貂蝉","杨玉环","王昭君","熊英"); //console.log(arr3); //方式4.直接使用[]方式 var arr4 = ["指南针","火药","造纸术","活字印刷术","熊氏吃饭术"]; //console.log(arr4); //二.数组的属性 //1:length: //console.log(arr2.length); //没有值的empty不会被算进来//2:concat方法.连接数组,会返回一个新的数组,原数组不会发生变化 /*var newArr = arr2.concat(arr3); console.log(newArr); *///3.join,把数组转换成字符串,方法中可以自定义分隔符,不写默认就是逗号 /*var str1 = arr2.join(); console.log(str1); var str2 = arr2.join("; "); console.log(str2); console.log(arr2); *///4.pop,将最后的元素取出来作为返回值,并从数组中将之删除 /*var ret = arr2.pop(); console.log(ret); console.log(arr2); *///5.shift,将第一个元素取出来作为返回值,并从数组中将之删除 /*var ret = arr2.shift(); console.log(ret); console.log(arr2); *///6.push,放入一个元素,将元素放入到最后一个位置,并返回数组的长度 /*var ret = arr2.push("金瓶梅"); console.log(ret); console.log(arr2); *///7.unshift放入一个元素,将元素放入到数组的第一位,并返回数组的长度 /*var ret = arr2.unshift("金瓶梅"); console.log(ret); console.log(arr2); *///8.reverse,颠倒数组中元素的顺序,对数组本身进行操作 /*console.log(arr2); arr2.reverse(); console.log(arr2); *///9.slice 截取数组,返回一个新的数组,对原数组不会有影响 /*var ret = arr2.slice(1,3); console.log(ret); console.log(arr2); *///10.对数组进行排序 /*var ret = arr2.sort(); console.log(ret); console.log(arr2); *///11.splice,重点(对数组做添加/删除/修改操作) /** * splice 添加 删除 替换 * 参数1:index :操作起始元素的位置 * 参数2:howmany 受影响的元素个数:如果是添加,0,如果是替换1,如果是删除表示删除的个数 * 参数3:element 元素,仅仅针对添加和替换,删除则省略 *///添加 //var ret = arr2.splice(1, 0, "小林的一生"); //操作原来的数组,没有返回值 //console.log(ret); //console.log(arr2); //替换 会将被替换的元素以数组的形式返回 //var ret = arr2.splice(1, 1, "小林的一生"); //console.log(ret); //console.log(arr2); //删除 会将被删除的元素以删除的形式返回 console.log(arr2); var ret = arr2.splice(1, 2); console.log(ret); console.log(arr2);

    推荐阅读