TS2872

This kind of expression is always truthy.

Broken Code ❌

function logAge(data: {}) {
  if ((!'age') in data) {
    console.log('Missing age');
  }
}

Operator precedence matters. Without parentheses, !'age' in data is parsed as (!'age') in data, which is always truthy. So !'age' becomes false, and false in data is invalid logic.

Fixed Code ✔️

Use parentheses to ensure the ! operator applies to the entire 'age' in data check:

function logAge(data: {}) {
  if (!('age' in data)) {
    console.log('Missing age');
  }
}