0

I've been using this trick a few time now but I still can't wrap my head around why this works and can't seem to find the answer. Could anybody please explain ?

let myArray = [0, 1]
let [myVar] = myArray
console.log(myVar) // outputs 0

How is [myVar] the same thing as putting [0] behind myrArray ?

Edit: already asked and answered here : Multiple assignment in javascript? What does [a,b,c] = [1, 2, 3]; mean?

Thank you everyone

  • 1
    It is destructuring the array and get the first index element and put it into `myVar`. [Read](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment) – DecPK Sep 09 '21 at 12:22
  • 1
    See the ["Array destructuring" section here](https://stackoverflow.com/a/68649003) – VLAZ Sep 09 '21 at 12:22
  • For some reason my brain had not connected Array destructuring to this... Thanks – virtual_Black_Whale Sep 09 '21 at 12:28

2 Answers2

1

You are probably looking for this reference.

But basically, the brackets can be used to assign individual elements of a structure/array to variables, and it can be used with more than one, as well.

E.g.:

let myArray = [0, 1]
let [myVar1, myVar2] = myArray
console.log(myVar1) // outputs 0
console.log(myVar2) // outputs 1

PS: fyi these [] are square brackets, and these <> are angle brackets.

N. Kern
  • 401
  • 2
  • 7
1

it is call "Destructuring_assignment" you can read more on that here

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

yehonatan yehezkel
  • 1,116
  • 18
  • 28