数组:有许多变量的集合,它们的名称和数据类型都是一致的。

定义    操作(添加修改)   

Var     arr=new Array();

Var arr=[ ];  //定义

Var arr1=[ 1,2,3,4];  //定义并赋值

数组元素:数组里面的每一个值

数组下标(索引):指明数组元素在数组中的位置(0开始

数组长度:数组元素的个数    arr1.length   有返回值,返回值为数组长度

 例:

arr arr=[ 1,2,3,4];//定义一个数组
console.log(arr[0])      //输出数组下标为0的数,结果为1
console.log(arr.length) //输出数组的长度,结果为4

数组的遍历

沿着一定的顺序对数组内部的元素做一次且仅做一次访问,就是遍历。

例:给定义数组的每一项加上123

var arr=['a','b','c'];//定义一个数组
for (var i=0;i<arr.length;++i){
    arr[i]=arr[i]+123;
    
}

一维数组:就是一个数组

var arr=[];
二维数组:将一个完整的数组作为另一个数组的数组元素

var arr[]  //定义一个数组
arr.push([123,123,123]);//将一个完整的数组添加到数组中
arr.push([234,234,234]);//再添加一个完整的数组

结果为:

[
[123,123,123],
[234,234,234]
]

提取二维数组的数:arr[0][1] 

第一个是外数组的索引,第二个是内数组的索引


多维数组:嵌套多个数组

 

数组的用法:

 

join()//数组转字符串,原数组不变
push()和pop()//末尾的添加、删除
shift() 和 unshift()//第一个元素的添加上相互
sort()//排序  1324=>1234
reverse()//翻转  1234=>4321
concat()//链接数组
slice()//删除指定位置的元素
splice()//删除指定位置的元素
indexOf()和 lastIndexOf() //查找元素第一次出现的位置   返回下标   indexOf从第一个查   lastIndexOf从最后一个查

 split()//以()为区分,变成数组。

 数组例题:

//题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
var arr1 = prompt("输入数组,以,分隔");
var arr1 = arr1.split(','); //以逗号区分,建立数组
console.log(arr1);
var arr = arr1.map(Number); //将数组变为数字数组
var max = arr[0];
var min = arr[0];
for (var i = 0; i <= arr.length; ++i) {
    if (max < arr[i]) {
        max = arr[i];
        var a = i;
    }
}
for (var i = 0; i <= arr.length; ++i) {
    if (min > arr[i]) {
        min = arr[i];
        var b = i;
    }
}

arr[a] = arr[0];
arr[0] = max;

arr[b] = arr[arr.length - 1];
arr[arr.length - 1] = min;
console.log(arr);
将数组变为数字数组可以在数组元素前加“+”,
for (var i = 0; i <= arr.length; ++i) {
    if (max < +arr[i]) {
        max = arr[i];
        var a = i;
    }

 

 

 

posted on 2018-06-15 16:56  丁昆  阅读(283)  评论(2编辑  收藏  举报