JavaScript Lesson 3: Data Types

⚡ JavaScript CourseLesson 3 of 20 · 15% complete

JavaScript has 8 data types. The 6 primitive ones you use every day are: string, number, boolean, undefined, null, and symbol.

The Main Types

// String — text
const name = "Alice";
const greeting = 'Hello World';
const template = `Hi, ${name}!`;

// Number — integers AND decimals (no separate float)
const age = 25;
const price = 9.99;
const negative = -100;

// Boolean — true or false
const isLoggedIn = true;
const hasError = false;

// Undefined — variable declared but no value assigned
let score;
console.log(score);   // undefined

// Null — intentional absence of value
let user = null;      // "there is no user"

// Symbol — unique identifier (advanced, rarely used)
const id = Symbol("id");

typeof — Check the Type

console.log(typeof "hello");     // "string"
console.log(typeof 42);          // "number"
console.log(typeof true);         // "boolean"
console.log(typeof undefined);    // "undefined"
console.log(typeof null);         // "object" (this is a JS bug!)
console.log(typeof {});           // "object"
console.log(typeof []);           // "object"
console.log(typeof function(){});  // "function"

Type Coercion — JS’s Quirky Behavior

// JS automatically converts types (sometimes surprising!)
console.log("5" + 3);    // "53" (string!)
console.log("5" - 3);    // 2   (number)
console.log("5" * 2);    // 10  (number)

// Explicit conversion
console.log(Number("42"));      // 42
console.log(String(100));       // "100"
console.log(Boolean(0));        // false
console.log(Boolean("hello"));  // true
console.log(Boolean(""));       // false

// Falsy values (these are false in conditions):
// false, 0, "", null, undefined, NaN

🏋️ Practice Task

Open the browser console. Test typeof on at least 5 different values. Then try these: typeof null (notice the bug!), Number(“abc”) (what do you get?), Boolean(0) vs Boolean(1). Write down your observations.

💡 Hint: NaN means “Not a Number” — it appears when number conversion fails like Number(“abc”).

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *