Introduction
Are you looking to fill an array with a specific value in JavaScript?
The fill method is a handy tool that allows you to do just that.
In this article, we will discuss how to use the fill method to fill an
array with a specific value. We will also cover some additional features
of the fill method, such as the ability to specify a start and end
index for the fill, and how to use the fill method with typed arrays.
By the end of this article, you should have a good understanding of how
to use the fill method to manipulate arrays in your code.
So let’s get started and learn how to use the fill method in
JavaScript!
Method-1: Using the fill() method
In JavaScript, the fill() method is used to fill the elements of an
array with a static value. This method modifies the original array,
filling all of its elements with the static value provided as an
argument. For example, we can make an array with different element
values filled with a specific value (say, 0).
let arr = [1, 2, 3, 4];
arr.fill(0);
console.log(arr);
Output
[ 0, 0, 0, 0 ]
The fill() method is often used to initialize an array with a default
value, or to quickly clear an array by filling it with null or
undefined values. It can be called on any array-like object, and it
accepts an optional second and third argument which specify the start
and end index for filling the array. The fill() method returns the
modified array.
Here are some more advanced examples of using the fill() method in
JavaScript:
let arr = [1, 2, 3, 4];
arr.fill(0, 1, 3);
console.log(arr);
let arr1 = [1, 2, 3, 4];
arr1.fill(undefined);
console.log(arr1);
Output
[ 1, 0, 0, 4 ]
[ undefined, undefined, undefined, undefined ]
In the above example, we fill the array with a static value, starting at index 1 and ending at index 3. Then, the next operation fills the entire array with undefined values.
Method-2: Using the fill method with typed arrays
The fill method can be used with typed arrays, which are arrays with a
fixed number of elements of a specific data type, such as Int8Array or
Uint16Array.
To use the fill method with a typed array, you can call the fill
method on the typed array and pass in the value you want to fill the
array with as an argument. The fill method will fill the entire typed
array with the specified value.
Here’s an example of using the fill method with a Uint8Array typed
array:
let arr = new Uint8Array(4);
arr.fill(255);
console.log(arr);
Output
Uint8Array(4) [ 255, 255, 255, 255 ]
In this example, we create a new Uint8Array typed array with 4
elements and use the fill method to fill the array with the value 255.
The fill method fills the entire array with the value 255, and the
output is [255, 255, 255, 255].
You can also use the fill method with a typed array to fill a specific
range of elements within the array. To do this, you can pass in a start
index and an end index as additional arguments to the fill method. The
fill method will fill the elements within the specified range with the
specified value.
Here’s an example of using the fill method with a start and end index:
let arr = new Uint8Array([2, 2, 3, 43, 5]);
arr.fill(255, 1, 3);
console.log(arr);
Output
Uint8Array(5) [ 2, 255, 255, 43, 5 ]
In this example, we create a new Uint8Array typed array with the
values 2, 2, 3, 43, and 5. We then use the fill method to fill the
elements at indices 1 and 2 with the value 255. The fill method fills
the specified range of elements with the value 255, and the output is
Uint8Array(5) [ 2, 255, 255, 43, 5 ].
Method-3: Using push method
Instead of using the fill method, we can make use of the push method
which appends new elements to the end of an array, and returns the new
length of the array. Therefore, we can make use of the for loop over a
pre-defined number of iterations (length of the array) and push the
filler element at every iteration.
Here is an example of how to use the push metho alongside the for
loop to fill arrays.
function filler(value, len) {
const array = [];
for (let i = 0; i < len; i++) {
array.push(value);
}
return array;
}
const arr = filler("wow", 4);
console.log(arr);
Output
[ 'wow', 'wow', 'wow', 'wow' ]
In the above code, we define a function called filler that takes two
arguments: value and len. Within the function, we make use a for
loop to iterate len times, and on each iteration it pushes the value
of value into an array called array. After the for loop has
completed, the function returns the array with len elements, all of
which have the value of value.
Method-4: Using the from method
Another approach to fill arrays is using the from method which creates
an array from an iterable object. Before, we go further, the from()
method syntax goes thus
Array.from(object, mapFn, thisValue)
object— An iterable object to convert to an array.mapFn— A mapping function to call on every element of the array.thisValue— Value of ’this’ used to invoke themapFn.
Now, for us to carry out an array fill operation, we will pass an object
with length property and the intended value, and then pass anonymous
function that will return the value we want filled.
Here is an example of how to make use of the from() method to fill an
array.
let arr = Array.from(
{
length: 7,
},
() => "wow"
);
console.log(arr);
Output
[
'wow', 'wow',
'wow', 'wow',
'wow', 'wow',
'wow'
]
In the above code, the Array.from() method takes two arguments: the
first is an iterable object, and the second is a map function that
allows you to transform the elements as they are being added to the new
array.
In this case, the iterable object is an object with a length property
set to 7. This object does not have a Symbol.iterator property, so the
Array.from() method will not actually iterate over the object’s
elements. Instead, it will create an array with 7 elements, all of which
will be the result of calling the map function.
The map function is a function that takes no arguments and returns the string “wow”. This function will be called 7 times, once for each element of the new array, and the result of each call will be added to the array as an element.
Summary
To fill an array, we can make use of the fill method which can be
helpful with typical and typed arrays. In addition, we can specify the
section of the array we want to fill.
References
Array.prototype.fill() -
JavaScript | MDN (mozilla.org)
Array.from() - JavaScript | MDN
(mozilla.org)
Array.prototype.push() -
JavaScript | MDN (mozilla.org)

![How to fill an Array in JavaScript? [SOLVED]](/javascript-array-fill/fill-array-js.jpg)