Entiende la idea
Antes de hacer cálculos debes reconocer qué clase de dato tienes. El texto 12 y el número 12 se parecen al leerlos, pero JavaScript puede tratarlos de forma muy diferente.
Un número permite calcular; una cadena representa texto; un booleano responde verdadero o falso. null indica una ausencia intencional; undefined suele significar que todavía no hay un valor asignado.
precio es un número, titulo es una cadena y disponible es un booleano. typeof devuelve number, string y boolean. null representa una ausencia elegida; undefined, por ejemplo, una propiedad no encontrada. La peculiaridad typeof null === "object" es histórica.
Pruébalo
Antes de ejecutar, piensa: ¿Qué tres palabras devuelve typeof?