Poznajemy dwie nowe, małe funkcje wprowadzone do tablic dość niedawno – Array.of i Array.fill.
Krótkie i proste funkcje pozwalające na zabawy z tablicami. Myślę, że poniższy zapis powinien być dla każdego zrozumiały:
<script>
let arr = [1];
</script>
Tworzymy tablicę jednoelementową z elementem 1. To samo możemy osiągnąć w Array.of:
<script>
let arr = Array.of(1);
</script>
Po co nam taka funkcja?
Cóż, mamy poza literałami tablicy funkcję Array, która zachowuje się dość specyficznie:
<script>
let arr = Array(3,2,1);
//[3,2,1]
let arr2 = Array(3);
//[empty,empty,empty]
</script>
Czyli podając jej „3,2,1” tworzy taką tablicę, natomiast podając jedną wartość 3, tworzy tablicę… z trzema pustymi elementami.
Możemy to wszystko zastąpić przez „of”:
<script>
let arr = Array.of(3,2,1);
//[3,2,1]
let arr2 = Array.of(3);
//[3]
</script>
A do czego służy nam „fill”? Do wypełniania pustych elementów utworzonych przez Array + jeden element:
<script>
let arr = Array(5).fill("hi");
console.log(arr);
//['hi', 'hi', 'hi', 'hi', 'hi']
</script>
Tworzymy tablicę z pięcioma pustymi elementami i za pomocą fill wypełniamy je naszym argumentem, tutaj napisem „hi”.