در جاوا‌اسکریپت مقادیر غیر هم نوع در محاسبات برای اجرا به اجبار به انواع هم نوع ( coercion ) همسان سازی میشوند.این مساله ظاهرا قدری پیچیده و بی قانون است اما اینطور نیست.(یک راهنمای جامع در این مورد را میتوانید اینجا مطالعه کنید.)

در مقایسه ها در جریان این تغییرات تعدادی از مقادیر به مقدار false از نوع بولی تبدیل میشوند.این مقادیر این ها هستند :

  • "" (رشته ی تهی)
  • 0 , -0 , NaN
  • null , undefined
  • false