0
点赞
收藏
分享

微信扫一扫

javascript数组

数组的创建方式


JS中创建数组有两种方式:


●    利用new创建数组
●    利用数组字面量创建数组

 

1、利用new创建数组

var  数组名=new Array() ;

var arr = new Array();   // 创建一个新的空数组


●这种方式暂且了解,等学完对象再看
●注意Array , A要大写

2、利用数组字面量创建数组

数组元素的类型


数组中可以存放任意类型的数据,例如  字符串,数字,布尔值  等。

var arrStus = ['小白', 12, true,28.9] ;

(true不需要加引号,字符串才加引号)
 

数组的索引


索引(下标) :用来访问数组元素的序号(数组下标从0开始)。
        var   arr = ['小白', "小黑', '大黄', '瑞奇'];
索引号:                 0           1       2         3

数组可以通过索引来访问、设置、修改对应的数组元素,我们可以通过“数组名[索引]”的形式来获取数组中的元素。这里的访问就是获取得到的意思
 

//定义数组
var arrStus = [1,2,3];
//获取数组中的第2个元素 ,arrStus[1]=2;
alert (arrStus[1]) ;

数组的长度


使用“数组名.length" 可以访问数组元素的数量(数组长度)。

//例如
var arr=[1,2,3,4,5,6,7];
//那么, arr.length=7;

//想要在控制台一行输出多个变量,只需加逗号(,)即可 

 

数组中新增元素


可以通过修改length长度以及索引号增加数组元素

1、通过修改length长度新增数组元素
●可以通过修改 length长度来实现数组扩容的目的
●length性是可读写的

var arr = ['red', 'green','blue', 'pink'] ;

arr. length = 7;    //将数组大小扩大为7

console. log(arr) ;
console. log(arr[4]) ;
console. log(arr[5]);
console. log(arr[6]);


其索引是4, 5 , 6的空间没有给值,就是声明变量未给值,默认值就是undefined.
 

2、通过修改数组索引新增数组元素


●可以通过修改数组索引的方式追加数组玩素
不能直接给数组名赋值 ,否则会覆盖掉以前的数据

var arr = ['red', 'green', 'blue', 'pink'] ;
arr[4] = ' hotpink" ;   //直接追加了arr[4],并赋值为  'hotpink'
console. log(arr) ;


这种方式也是我们最常用的一种方式。
 

 

遍历数组

使用循环如(for、while、do while)使数组中每一个元素都经过一遍;

例如:

var arr=[1,2,3,4,5,6,7,8,9];
for(var i=0; i < arr.length ;i++){
    console.log(arr[i]);
}

简单冒泡排序

var arr=[3,1,4,5,6,7,8,2,3];
        var temp;
        for(var j=0;j<arr.length-1;j++){
            for(var i=0;i<arr.length-1;i++){
                if(arr[i]>arr[i+1]){
                    temp=arr[i];
                    arr[i]=arr[i+1];
                    arr[i+1]=temp;
                }
            }
        }
        console.log(arr);

此处冒泡排序是将相邻的元素进行比较,不断选出最大的元素,经过一趟排序后,最大的元素交换到了数组最后面,然后再来一趟,第二大元素到了倒数第二个位子上,依此类推,经过

arr.length-1  趟之后,数组元素从小到大依次排列好了;

冒泡排序的趟数(最外重循环):数组长度减一次,(如果有两个元素,就冒泡一趟)

简单选择排序

 var arr=[3,1,4,5,6,7,8,2,3];
        var min,temp;
        for(var j=0;j<=arr.length-1;j++){
            min=j;
            for(var i=j+1;i<arr.length;i++)
            {
                if(arr[i]<arr[min]){
                    min=i;
                }
            }
            if(min!=j){
                temp=arr[j];
                arr[j]=arr[min];
                arr[min]=temp;
            }
        }
        console.log(arr);

选择排序的精髓:

从数组第一个元素开始选出一个最小(最大)值,然后从剩下的元素中通过循环选择出 最小(最大)值,并交换,然后从数组第二个开始,又从剩下的选择,以此类推,每次都交换好了,总体就保持从小到大(从大到小)的顺序。

数组数据倒置

        var arr=[1,2,3,4,5,6,7,8,9];
        var left=0,right=arr.length-1;
        var temp;
        while(left<right){
            temp=arr[left];
            arr[left]=arr[right];
            arr[right]=temp;
            left++;
            right--;
        }
        console.log(arr);

数组中删除指定数据

        var arr=[1,2,3,4,5,3,6,7,8,9];
        var num=arr.length;
        for(var i=0;i<arr.length;i++){
            if(arr[i]===3){          //删除了数组中为3的元素
                for(var j=i+1;j<arr.length;j++){
                    arr[j-1]=arr[j];
                }
                num--;   
            }
        }
        arr.length=num;   //缩短了数组的大小
        console.log(arr);
举报

相关推荐

0 条评论