When we speak about crossing an array, searching for elements, and other actions, there is the most appropriate array method for this. However, some methods are shaded. We will talk about the useful methods of arrays that are imperative to every JS developer.
The Basic Things
There are four things you need to know working with arrays – map, filter, reduce, and spread operator. They are a powerful basis.
Probably, you often deal with this method. It is used for the element by element array transformation into a new one. The map() method takes only one parameter — a function that is generated at each iteration over the array. The method returns a new array and does not modify the existing one. So, if you need the element by element array transformation into a new one, use map().
Technically, the name of the method speaks for itself: it is used when you need to filter the array. As with map(), filter() method takes only one parameter — a function that is generated at each iteration. The function must return a boolean value. After that, you get a filtered array with the elements you need.
Perhaps, this is a rather difficult method for understanding. But one day you will understand how many cool things you can do with it. Reduce() method is designed to combine array values into one value. The method proceeds two parameters. The first one is the callback function (reducer), the second is the primary value, which is optional and is the first element of the array by default.
The callback function accepts four arguments:
- accumulator (where the intermediate result of iterations is stored)
- current array value
- current index
- array itself
In most cases, all it takes is these first two arguments: intermediate result and current value. The reduce() method is so good that with its help you can create other array methods, for example, map() or filter().
4. Spread operator (ES2015 standard)
Despite the fact that the operator is not a method, it can help a lot with arrays. For example, you can make copies of arrays or combine several arrays into one. Note that this statement creates a superficial copy of the original array.
Summarizing all the above-mentioned information, it is important to say, that every time you need to process an array, it is not necessary to reinvent the wheel. Probably, this has already been done for you. Look for a suitable method. In most cases, the task can be solved using map (), filter (), reduce () or spread operator methods.