Эта статья всегда будет обновляться, когда я сталкиваюсь с какими-либо ошибками или событиями, которые стоит записать во время разработки и отладки.

Что такое нулевое значение в JavaScript?

null >= 0 верно в JavaScript, но null === 0 неверно в JavaScript

/*
Total scenario: 
When we get a inventory number from backend but api would return null 
which means inventory is unlimited how to fix it from Front-end?
*/

// Original Function
const inventoryCalc(inv){
  return (inv >= 0 ? inv : 0) - (selectNumbersByUsers)
}

// Scenario 1
let inventory = 0
inventoryCalc(inventory) // Return 0 - selectNumbersByUsers

// Scenario 2
inventory = null
inventoryCalc(inventory) // Return null - selectNumbersByUsers
// null >= 0 in javascript, but null is not === 0

// Scenario 3
inventory = 1
inventoryCalc(inventory) // Return 1 - selectNumbersByUsers

/*============================================================*/
// Fix function
const inventoryCalc(inv){
  return ( inv !== null ? inv : Number.MAX_SAFE_INTEGER) - (selectNumbersByUsers)
}

// Scenario 1 > return 0 - selectNumbersByUsers
// Scenario 2 > return Number.MAX_SAFE_INTEGER - selectNumbersByUsers
// Scenario 3 > return 1 - selectNumbersByUsers