Understanding a simple function .

Understanding a simple function .

Given that  " getRandomInt " is a function that generates a random number , what is happening on line 4 ? 

  1. function rq() {
         var a = getRandomInt(0, 100),
             b = getRandomInt(0, 100),
             operator = "+-*" [getRandomInt(0, 3)], // whats happening on this line ??
             answer = operator === "+" ? a + b : operator === "-" ? a - b : operator === "*" ? a * b:0;

         return ["what is " + a + operator + b, answer]
     }