关于Javascript数组的那些事

    今晚,跟一个也是学习web前端开发的同学,一直纠结着有关数组索引和长度的问题,其实这是JS语法中很简单的问题,大概由于聊天方式的问题,纠结了很久,导致我深夜未眠,于是,决定动手写写JS中的数组。

1、创建数组的方式。

简章粗暴的方式:var arr = [1,2,3];

高逼格的方式(不推荐):var arr = new Array(1,2,3);

2、关于长度和索引的问题(今晚罪恶的根源)。

    获取数组的长度可以通过arr.length , 如上例 arr.length=3,而数组索引是从0开始的,如上例a[0]=1;a[1]=2;a[2]=3。因此,要想获取数组最后一个元素,不要写成arr[arr.length],而应该是arr[arr.length-1]。

3、数组的遍历方法。

    这是我面试中遇到过的问题,这里稍微详细的写写。

    方法一、 for循环

var arr = [1,2,3]

for(var i=0; i< arr.length; i++){

console.log(arr[i]);

}

     方法二、 while循环

var arr = [1,2,3], i = 0;

while(i < arr.length){

console.log(arr[i]);

i++;

}


    方法三、 foreach方法

var arr = [1,2,3],i=0;

arr.forEach(function(x){

console.log(x);

})

    方法四、 for...in方法

var arr = [1,2,3],i=0;

for(x in arr){

console.log(arr[x])

}

    方法五、 ES6中的for...of方法

var arr = [1,2,3],i=0;

for(x of arr){

console.log(x)

}

    方法六、  map方法

var arr = [1,2,3],i=0;

arr.map(function(x){

console.log(x);

return x;

})

    这个方法要注意return,return的值会改变原数据,为了不改变原数组,所以,我return x。

    方法七、 filter方法

var arr = [1,2,3],i=0;

arr.filter(function(x){

console.log(x);

return true;

})

    这个方法用于筛选,一样要注意return的值,return true保留,return false则去除。

4  数组的其它方法

    数组倒序:arr.reverse();

    数组排序:arr.sort();

    数组运算:arr.reduce();

    合并数组:arr1.concat(arr2);

    数组组成一个字符串:arr.join('')。

    在此,我就写着这么多,日后有更多了解再作补充。

你可能感兴趣的:(关于Javascript数组的那些事)