0
0
Posts
DN
Dung NTdungnt_works

Template Literals trong JavaScript

Đăng vào 3 months ago

• 3 phút đọc

Chủ đề:

Javascript

Trong lập trình JavaScript, việc xử lý chuỗi là một phần không thể thiếu trong hầu hết các ứng dụng web. Với sự ra đời của ES6 (ECMAScript 2015), JavaScript đã giới thiệu một tính năng mới gọi là Template Literals, mang lại cách tiếp cận linh hoạt và mạnh mẽ hơn trong việc xử lý chuỗi. Bài viết này sẽ cung cấp một cái nhìn sâu sắc về Template Literals, cách sử dụng chúng, và các ví dụ thực tế để bạn có thể hiểu rõ hơn về khả năng của tính năng này.

Khái Niệm Template Literals

Template Literals (còn được gọi là Template Strings) là một cú pháp mới trong JavaScript cho phép bạn tạo ra các chuỗi nâng cao với khả năng chèn biến và biểu thức trực tiếp vào trong chuỗi. Điều này được thực hiện thông qua việc sử dụng dấu backtick (`) thay vì dấu nháy đơn hoặc kép truyền thống.

Đặc Điểm Của Template Literals

  1. Interpolation: Khả năng chèn các biến và biểu thức vào trong chuỗi một cách trực tiếp.
  2. Multiline strings: Hỗ trợ tạo chuỗi nhiều dòng mà không cần sử dụng ký tự xuống dòng.
  3. Tagged templates: Cho phép xử lý và tái cấu trúc chuỗi bằng cách sử dụng một hàm.

Cú Pháp Cơ Bản

Template Literals sử dụng dấu backtick để định nghĩa chuỗi và ${} để chèn biến hoặc biểu thức. Ví dụ:

let name = "John";
let message = `Hello, ${name}!`;
console.log(message);  // Output: Hello, John!

Trong ví dụ trên, biến name được chèn vào chuỗi thông qua cú pháp ${name}. JavaScript sẽ tự động thay thế ${name} bằng giá trị của biến name.

Ứng Dụng của Template Literals

1. Tạo Chuỗi Nhiều Dòng

Trước khi có Template Literals, việc tạo chuỗi nhiều dòng trong JavaScript thường yêu cầu phải sử dụng ký tự xuống dòng \n. Tuy nhiên, với Template Literals, bạn chỉ cần nhập xuống dòng một cách tự nhiên:

let address = `123 Main St.
New York, NY 10001`;
console.log(address);

2. Biểu Thức Phức Tạp

Template Literals cho phép bạn thực hiện các phép tính hoặc gọi hàm ngay trong chuỗi:

let price = 19.99;
let taxRate = 0.07;
let total = `Total: $${(price * (1 + taxRate)).toFixed(2)}`;
console.log(total);  // Output: Total: $21.39

3. Tagged Templates

Tagged Templates là một tính năng nâng cao của Template Literals, cho phép bạn sử dụng một hàm để xử lý các phần của Template Literal trước khi tạo chuỗi cuối cùng. Điều này rất hữu ích cho việc xử lý định dạng, i18n, hoặc tạo các DSL (Domain Specific Languages):

function highlight(strings, ...values) {
    return strings.reduce((result, str, i) => {
        let val = values[i] ? `<strong>${values[i]}</strong>` : '';
        return result + str + val;
    }, '');
}

let name = "John";
let age = 30;
let sentence = highlight`My name is ${name} and I am ${age} years old.`;
console.log(sentence);  // Output: My name is <strong>John</strong> and I am <strong>30</strong> years old.

Kết Luận

Template Literals trong JavaScript mang lại một cách tiếp cận mới và mạnh mẽ cho việc xử lý chuỗi, từ việc chèn biến một cách dễ dàng đến việc tạo các chuỗi nhiều dòng mà không cần phải lo lắng về ký tự xuống dòng. Với khả năng này, bạn có thể viết mã JavaScript một cách rõ ràng và hiệu quả hơn, đồng thời mở ra nhiều khả năng mới cho việc xử lý và hiển thị dữ liệu trong các ứng dụng web của mình.

Gợi ý câu hỏi phỏng vấn
entry

So sánh ===== trong Javascript?

entry

Sự khác biệt của biến dùng var, letconst trong javascript là gì?

entry

Sự khác nhau giữa nullundefined trong Javascript?

entry

Javascript có các kiểu dữ liệu nào? Bạn biết gì về chúng

Bài viết cùng tác giả

Không có kết quả

Không có kết quả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào