DEV Community

Cover image for Ultimate Guide to Mastering JavaScript Array Methods
Deepak Kumar
Deepak Kumar

Posted on • Originally published at raajaryan.tech

Ultimate Guide to Mastering JavaScript Array Methods

BuyMeACoffee

Arrays are fundamental data structures in JavaScript that allow us to store and manipulate collections of data. JavaScript provides a plethora of methods to work with arrays efficiently. In this guide, we'll delve into various array methods, explaining their usage with examples.

1. Introduction to Arrays

Arrays in JavaScript are list-like objects used to store multiple values in a single variable. They can hold mixed data types and dynamically resize as elements are added or removed.

Creating an Array

let fruits = ['apple', 'banana', 'cherry'];
console.log(fruits); // Output: ['apple', 'banana', 'cherry']
Enter fullscreen mode Exit fullscreen mode

Accessing Elements

console.log(fruits[0]); // Output: 'apple'
console.log(fruits[1]); // Output: 'banana'
Enter fullscreen mode Exit fullscreen mode

2. Basic Array Methods

push()

The push() method adds one or more elements to the end of an array and returns the new length of the array.

let numbers = [1, 2, 3];
numbers.push(4);
console.log(numbers); // Output: [1, 2, 3, 4]
Enter fullscreen mode Exit fullscreen mode

pop()

The pop() method removes the last element from an array and returns that element.

let fruits = ['apple', 'banana', 'cherry'];
let lastFruit = fruits.pop();
console.log(fruits); // Output: ['apple', 'banana']
console.log(lastFruit); // Output: 'cherry'
Enter fullscreen mode Exit fullscreen mode

shift()

The shift() method removes the first element from an array and returns that element.

let fruits = ['apple', 'banana', 'cherry'];
let firstFruit = fruits.shift();
console.log(fruits); // Output: ['banana', 'cherry']
console.log(firstFruit); // Output: 'apple'
Enter fullscreen mode Exit fullscreen mode

unshift()

The unshift() method adds one or more elements to the beginning of an array and returns the new length of the array.

let numbers = [1, 2, 3];
numbers.unshift(0);
console.log(numbers); // Output: [0, 1, 2, 3]
Enter fullscreen mode Exit fullscreen mode

concat()

The concat() method is used to merge two or more arrays. This method does not change the existing arrays but returns a new array.

let array1 = [1, 2, 3];
let array2 = [4, 5, 6];
let array3 = array1.concat(array2);
console.log(array3); // Output: [1, 2, 3, 4, 5, 6]
Enter fullscreen mode Exit fullscreen mode

join()

The join() method joins all elements of an array into a string.

let elements = ['Fire', 'Air', 'Water'];
let joined = elements.join();
console.log(joined); // Output: 'Fire,Air,Water'
Enter fullscreen mode Exit fullscreen mode

3. Iteration Methods

forEach()

The forEach() method executes a provided function once for each array element.

let array = [1, 2, 3, 4, 5];
array.forEach((element) => {
    console.log(element);
});
// Output: 
// 1
// 2
// 3
// 4
// 5
Enter fullscreen mode Exit fullscreen mode

map()

The map() method creates a new array with the results of calling a provided function on every element in the calling array.

let numbers = [1, 2, 3, 4];
let squared = numbers.map((num) => num * num);
console.log(squared); // Output: [1, 4, 9, 16]
Enter fullscreen mode Exit fullscreen mode

filter()

The filter() method creates a new array with all elements that pass the test implemented by the provided function.

let numbers = [1, 2, 3, 4, 5];
let evenNumbers = numbers.filter((num) => num % 2 === 0);
console.log(evenNumbers); // Output: [2, 4]
Enter fullscreen mode Exit fullscreen mode

reduce()

The reduce() method executes a reducer function (that you provide) on each element of the array, resulting in a single output value.

let numbers = [1, 2, 3, 4];
let sum = numbers.reduce((accumulator, currentValue) => accumulator + currentValue);
console.log(sum); // Output: 10
Enter fullscreen mode Exit fullscreen mode

reduceRight()

The reduceRight() method applies a function against an accumulator and each value of the array (from right-to-left) to reduce it to a single value.

let numbers = [1, 2, 3, 4];
let product = numbers.reduceRight((accumulator, currentValue) => accumulator * currentValue);
console.log(product); // Output: 24
Enter fullscreen mode Exit fullscreen mode

every()

The every() method tests whether all elements in the array pass the test implemented by the provided function.

let numbers = [1, 2, 3, 4, 5];
let allPositive = numbers.every((num) => num > 0);
console.log(allPositive); // Output: true
Enter fullscreen mode Exit fullscreen mode

some()

The some() method tests whether at least one element in the array passes the test implemented by the provided function.

let numbers = [1, 2, 3, 4, 5];
let somePositive = numbers.some((num) => num > 3);
console.log(somePositive); // Output: true
Enter fullscreen mode Exit fullscreen mode

4. Searching and Sorting Methods

indexOf()

The indexOf() method returns the first index at which a given element can be found in the array, or -1 if it is not present.

let fruits = ['apple', 'banana', 'cherry'];
let index = fruits.indexOf('banana');
console.log(index); // Output: 1
Enter fullscreen mode Exit fullscreen mode

lastIndexOf()

The lastIndexOf() method returns the last index at which a given element can be found in the array, or -1 if it is not present.

let numbers = [2, 5, 9, 2];
let index = numbers.lastIndexOf(2);
console.log(index); // Output: 3
Enter fullscreen mode Exit fullscreen mode

find()

The find() method returns the value of the first element in the array that satisfies the provided testing function. Otherwise, it returns undefined.

let numbers = [1, 2, 3, 4, 5];
let found = numbers.find((num) => num > 3);
console.log(found); // Output: 4
Enter fullscreen mode Exit fullscreen mode

findIndex()

The findIndex() method returns the index of the first element in the array that satisfies the provided testing function. Otherwise, it returns -1.

let numbers = [1, 2, 3, 4, 5];
let index = numbers.findIndex((num) => num > 3);
console.log(index); // Output: 3
Enter fullscreen mode Exit fullscreen mode

includes()

The includes() method determines whether an array includes a certain value among its entries, returning true or false as appropriate.

let fruits = ['apple', 'banana', 'cherry'];
let hasBanana = fruits.includes('banana');
console.log(hasBanana); // Output: true
Enter fullscreen mode Exit fullscreen mode

sort()

The sort() method sorts the elements of an array in place and returns the array. The default sort order is ascending.

let fruits = ['cherry', 'apple', 'banana'];
fruits.sort();
console.log(fruits); // Output: ['apple', 'banana', 'cherry']
Enter fullscreen mode Exit fullscreen mode

reverse()

The reverse() method reverses an array in place. The first array element becomes the last, and the last array element becomes the first.

let numbers = [1, 2, 3, 4, 5];
numbers.reverse();
console.log(numbers); // Output: [5, 4, 3, 2, 1]
Enter fullscreen mode Exit fullscreen mode

5. Array Manipulation Methods

slice()

The slice() method returns a

shallow copy of a portion of an array into a new array object selected from start to end (end not included).

let fruits = ['apple', 'banana', 'cherry', 'date'];
let citrus = fruits.slice(1, 3);
console.log(citrus); // Output: ['banana', 'cherry']
Enter fullscreen mode Exit fullscreen mode

splice()

The splice() method changes the contents of an array by removing or replacing existing elements and/or adding new elements in place.

let fruits = ['apple', 'banana', 'cherry', 'date'];
let removed = fruits.splice(2, 1, 'grape');
console.log(fruits); // Output: ['apple', 'banana', 'grape', 'date']
console.log(removed); // Output: ['cherry']
Enter fullscreen mode Exit fullscreen mode

fill()

The fill() method changes all elements in an array to a static value, from a start index to an end index (end not included).

let numbers = [1, 2, 3, 4, 5];
numbers.fill(0, 2, 4);
console.log(numbers); // Output: [1, 2, 0, 0, 5]
Enter fullscreen mode Exit fullscreen mode

copyWithin()

The copyWithin() method shallow copies part of an array to another location in the same array and returns it without modifying its length.

let numbers = [1, 2, 3, 4, 5];
numbers.copyWithin(0, 3, 4);
console.log(numbers); // Output: [4, 2, 3, 4, 5]
Enter fullscreen mode Exit fullscreen mode

6. Static Array Methods

Array.isArray()

The Array.isArray() method determines whether the passed value is an Array.

console.log(Array.isArray([1, 2, 3])); // Output: true
console.log(Array.isArray('Not an array')); // Output: false
Enter fullscreen mode Exit fullscreen mode

Array.from()

The Array.from() method creates a new, shallow-copied Array instance from an array-like or iterable object.

let str = 'Hello';
let chars = Array.from(str);
console.log(chars); // Output: ['H', 'e', 'l', 'l', 'o']
Enter fullscreen mode Exit fullscreen mode

Array.of()

The Array.of() method creates a new Array instance with a variable number of arguments, regardless of number or type of the arguments.

let numbers = Array.of(1, 2, 3, 4);
console.log(numbers); // Output: [1, 2, 3, 4]
Enter fullscreen mode Exit fullscreen mode

7. Conclusion

Arrays in JavaScript are versatile and come with a wide range of methods that make it easy to perform various operations. From adding and removing elements to searching, sorting, and transforming arrays, these methods provide powerful tools for developers. Understanding and utilizing these methods can significantly enhance your ability to manage and manipulate data in JavaScript effectively.

By mastering these array methods, you'll be well-equipped to handle complex data structures and perform advanced operations with ease. Happy coding!


💰 You can help me by Donating

BuyMeACoffee

Top comments (0)