Backticks (`) enable multi-line strings and variable interpolation.
const name = "Alice";
const greeting = `Hello, ${name}!`;
console.log(greeting); // "Hello, Alice!"
Supports multi-line strings:
const message = `This is
a multi-line string.`;
Shorter syntax for defining object properties and methods.
const age = 30;
const person = {
name: "Alice",
age, // Same as age: age
greet() {
return `Hi, I'm ${this.name}`;
}
};
console.log(person.greet()); // "Hi, I'm Alice"
Set default values for function parameters.
const greet = (name = "Guest") => `Hello, ${name}`;
console.log(greet()); // "Hello, Guest"
console.log(greet("Bob")); // "Hello, Bob"
Extract values from objects and arrays.
Object Destructuring
const person = { name: "John", age: 30 };
const { name, age } = person;
console.log(name, age); // "John" 30
// Use originalName: aliasName to rename variables.
const { name: username, age: userAge } = person;
// Default Values
const { name, age, sex = "male" } = person;
console.log(sex); // "male" (if `sex` is undefined in person)
Array Destructuring
const nums = [1, 2, 3];
const [first, second] = nums;
console.log(first, second); // 1 2
Nested Destructuring
const user = { info: { name: "Alice", age: 28 } };
const { info: { name, age } } = user;
console.log(name, age); // "Alice" 28
Destructuring with Function Parameters