My understanding is that in ES 6, when an expression is evaluated, it returns a completion record (which is a specification device for explaining behaviour) that holds information about the result of evaluating the expression.
In the case above, if the argument is an abrupt completion record (i.e. its type is anything other than normal), then it is returned.
If the argument is not an abrupt completion record, its value is returned.
Which essentially means that if the conversion of the argument to an integer went OK, return the value. Otherwise, propigate an error value.