开发者社区 > 博文 > Javascript-Arrays
分享
  • 打开微信扫码分享

  • 点击前往QQ分享

  • 点击前往微博分享

  • 点击复制链接

Javascript-Arrays

  • 京东城市JUST团队
  • 2021-01-27
  • IP归属:未知
  • 20840浏览

1.用map迭代Arrays

例如:

var timesFour = oldArray.map(function(val){
  return val * 4;
});

map方法会遍历数组的每一个元素, 根据回掉函数(上面对每个元素乘4)创建一个新的数组。

注意:它不改变原数组。

2.使用reduce方法压缩arrays

这个reduce方法用来遍历一个数组然后把它压缩成一个值.

在reduce方法的回掉方法里传入两个参数,一个是搜集变量(下面例子是previousVal),一个是现在的变量(currentVal).

reduce方法的第二个参数(第一个参数是回掉方法)用来初始化第一个参数的值,可以省略, 如果省略,则用数组的第一个值来给第一个参数初始化,currentVal就从数组第二个元素开始。

例如,求每个数组元素相反数:

var singleVal = array.reduce(function(previousVal, currentVal) {
  return previousVal - currentVal;
}, 0);

再比如,求数组的和:

var array = [4,5,6,7,8];
var singleVal = 0;

singleVal = array.reduce(function(sum,currentValue){
  return sum += currentValue;
},0);

3.用filter方法过滤Arrays

这个方法可以过滤出想要的元素来.

filter的回调函数以当前值为参数.

例如,过滤掉5:

array = array.filter(function(val) {
  return val !== 5;
});

4.Sort Arrays

sort默认是升序排列,要降序就自己写比较函数。

如果没有比较函数,则默认按字母序.

它返回的是排好序的数组。

var array = [1, 12, 21, 2];
array.sort(function(a, b) {
  return a - b;
});

5.Reverse Arrays

reverse方法用于反转数组。返回反转的数组。

var myArray = [1, 2, 3];
myArray.reverse();

returns [3, 2, 1]

6.Concatenate Arrays with concat

concat方法可以连接两个数组。连接在最后。

使用方法:

newArray = oldArray.concat(otherArray);

7.Split Strings with split

用split方法可以将字符串分割成数组.

需要指定分隔符。

例如,按s分割:

var array = string.split('s');

或则按空格分割:

var string = "Split me into an array";
var array = [];

array = string.split(' ');

8.Join Strings with join

同样,我们可以根据你选择的分隔符将数组连接成字符串。

例如:

var veggies = ["Celery", "Radish", "Carrot", "Potato"];
var salad = veggies.join(" and ");
console.log(salad); // Celery and Radish and Carrot and Potato

9.every

every方法用于判断是否数组每个元素都满足一个条件,否则返回false。

例如:

var ages = [32, 33, 16, 40];

function checkAdult(age) {
    return age >= 18;
}

ages.every(checkAdult);//false

10.indexOf()

返回指定元素在数组中的位置,找不到返回-1:

array.indexOf(item,start);//从start开始
var arr = [1,2,3,1];
arr.indexOf(1);//0
arr.indexOf(1,2);//3

同时还有lastIndexOf()

12.array.pop()

用于弹出最后一个元素,长度变化。

相对应的有push()

shift: 移除并返回第一个元素

unshift: 向数组的开头添加一个或多个元素,并返回新的长度。

13.slice

选择数组中的一段

返回一个新的数组,包含从 start 到 end (不包括该元素)的 array中的元素

array.slice(start, end)

参数可以为负数,表示从后往前选择。

例如:

var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var myBest = fruits.slice(-3,-1);//Lemon,Apple

14.some()

some() 方法用于检测数组中的元素是否满足指定条件,只要有一个就返回true。

var ages = [3, 10, 18, 20];

function checkAdult(age) {
    return age >= 18;
}
ages.some(checkAdult);//true

15.toString()

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.toString();//Banana,Orange,Apple,Mango
共0条评论