Hướng dẫn what do you call ${} in javascript? - bạn gọi ${} trong javascript là gì?
Các mẫu chữ là chữ được phân định bằng các ký tự Backtick ( Show Các mẫu mẫu đôi khi được gọi là chuỗi mẫu một cách không chính thức, bởi vì chúng được sử dụng phổ biến nhất để nội suy chuỗi (để tạo chuỗi bằng cách thay thế các trình giữ chỗ). Tuy nhiên, một mẫu được gắn thẻ theo nghĩa đen có thể không dẫn đến một chuỗi; Nó có thể được sử dụng với chức năng thẻ tùy chỉnh để thực hiện bất kỳ hoạt động nào bạn muốn trên các phần khác nhau của mẫu theo nghĩa đen. Cú pháp
Thông số 4Văn bản chuỗi sẽ trở thành một phần của mẫu theo nghĩa đen. Hầu như tất cả các nhân vật đều được phép theo nghĩa đen, bao gồm các lỗi phá vỡ dòng và các ký tự khoảng trắng khác. Tuy nhiên, các chuỗi thoát không hợp lệ sẽ gây ra lỗi cú pháp, trừ khi chức năng thẻ được sử dụng. 5Một biểu thức được chèn vào vị trí hiện tại, có giá trị được chuyển đổi thành một chuỗi hoặc được chuyển sang 6. 6Nếu được chỉ định, nó sẽ được gọi với mảng chuỗi mẫu và biểu thức thay thế và giá trị trả về trở thành giá trị của mẫu theo nghĩa đen. Xem các mẫu được gắn thẻ. Sự mô tảCác chữ cái được đặt trong các ký tự Backtick ( 3) thay vì các trích dẫn kép hoặc đơn.Cùng với việc có các chuỗi bình thường, các chữ cái cũng có thể chứa các phần khác được gọi là người giữ chỗ, được các biểu thức nhúng được phân định bằng dấu hiệu đô la và niềng răng xoăn: 9. Các chuỗi và giữ chỗ được chuyển đến một hàm - một hàm mặc định hoặc hàm bạn cung cấp. Hàm mặc định (khi bạn không cung cấp của riêng mình) chỉ thực hiện phép nội suy chuỗi để thay thế các giữ chỗ và sau đó nối các bộ phận thành một chuỗi.Để cung cấp một chức năng của riêng bạn, đi trước mẫu theo nghĩa đen với một tên hàm; Kết quả được gọi là một mẫu được gắn thẻ. Trong trường hợp đó, theo nghĩa đen của mẫu được chuyển đến chức năng thẻ của bạn, nơi sau đó bạn có thể thực hiện bất kỳ hoạt động nào bạn muốn trên các phần khác nhau của mẫu theo nghĩa đen.tagged template. In that case, the template literal is passed to your tag function, where you can then perform whatever operations you want on the different parts of the template literal. Để thoát khỏi một backtick trong một mẫu theo nghĩa đen, đặt một dấu gạch chéo ngược ( 0) trước mặt backtick.Dấu hiệu đồng đô la có thể được thoát cũng như để ngăn chặn nội suy.
Chuỗi đa dòngBất kỳ ký tự mới nào được chèn vào nguồn là một phần của mẫu theo nghĩa đen. Sử dụng các chuỗi bình thường, bạn sẽ phải sử dụng cú pháp sau để có được các chuỗi nhiều dòng:
Sử dụng theo nghĩa đen, bạn có thể làm điều tương tự với điều này:
Chuỗi nội suyNếu không có chữ cái, khi bạn muốn kết hợp đầu ra từ các biểu thức với các chuỗi, bạn sẽ kết hợp chúng bằng cách sử dụng toán tử bổ sung 1:
Điều đó có thể khó đọc - đặc biệt là khi bạn có nhiều biểu thức. Với các mẫu chữ, bạn có thể tránh toán tử nối - và cải thiện khả năng đọc mã của bạn - bằng cách sử dụng trình giữ chỗ của mẫu 9 để thực hiện các phép thay thế cho các biểu thức nhúng:
Lưu ý rằng có một sự khác biệt nhẹ giữa hai cú pháp. Mẫu chữ viết tắt biểu thức của chúng trực tiếp vào các chuỗi, trong khi bổ sung ép buộc các toán hạng của nó cho các nguyên thủy trước tiên. Để biết thêm thông tin, hãy xem trang tham chiếu cho toán tử 1.Mẫu làm tổTrong một số trường hợp nhất định, việc làm tổ một mẫu là cách dễ nhất (và có lẽ dễ đọc hơn) để có các chuỗi có thể cấu hình. Trong một mẫu được phân loại lại, rất đơn giản để cho phép Backticks bên trong bằng cách sử dụng chúng bên trong trình giữ chỗ 9 trong mẫu.Ví dụ: không có nghĩa đen, nếu bạn muốn trả về một giá trị nhất định dựa trên một điều kiện cụ thể, bạn có thể làm một cái gì đó như sau:
Với một mẫu theo nghĩa đen nhưng không làm tổ, bạn có thể làm điều này:
Với việc làm tổ của các mẫu chữ, bạn có thể làm điều này:
Mẫu được gắn thẻMột hình thức nâng cao hơn của các mẫu chữ được gắn thẻ. Tags cho phép bạn phân tích chữ cái theo nghĩa đen với một chức năng. Đối số đầu tiên của hàm thẻ chứa một mảng các giá trị chuỗi. Các đối số còn lại có liên quan đến các biểu thức. Hàm thẻ sau đó có thể thực hiện bất kỳ hoạt động nào trên các đối số này bạn muốn và trả về chuỗi được thao tác. (Ngoài ra, nó có thể trả về một cái gì đó hoàn toàn khác, như được mô tả trong một trong các ví dụ sau.) Tên của hàm được sử dụng cho thẻ có thể là bất cứ điều gì bạn muốn.
Thẻ không phải là một định danh đơn giản. Bạn có thể sử dụng bất kỳ biểu thức nào có ưu tiên lớn hơn 16, bao gồm truy cập thuộc tính, cuộc gọi chức năng, biểu thức mới hoặc thậm chí một mẫu được gắn thẻ khác. 0Mặc dù về mặt kỹ thuật được cho phép bởi cú pháp, các mẫu không được gắn thẻ là các chuỗi và sẽ ném 5 khi bị xích. 1Ngoại lệ duy nhất là chuỗi tùy chọn, sẽ ném lỗi cú pháp. 2Lưu ý rằng hai biểu thức này vẫn có thể phân tích được. Điều này có nghĩa là họ sẽ không phải chịu sự chèn dấu chấm phẩy tự động, điều này sẽ chỉ chèn các dấu chấm phẩy để sửa mã không thể thay đổi. 3Các chức năng thẻ thậm chí không cần phải trả về một chuỗi! 4Đối số đầu tiên nhận được bởi hàm thẻ là một mảng các chuỗi. Đối với bất kỳ mẫu nào theo nghĩa đen, độ dài của nó bằng số lượng thay thế (sự xuất hiện của 6) cộng với một, và do đó luôn không trống.Đối với bất kỳ biểu thức mẫu được gắn thẻ cụ thể nào, hàm thẻ sẽ luôn được gọi với cùng một mảng theo nghĩa đen chính xác, bất kể được đánh giá bao nhiêu lần theo nghĩa đen. 5Điều này cho phép thẻ lưu trữ kết quả dựa trên danh tính của đối số đầu tiên của nó. Để đảm bảo hơn nữa sự ổn định của giá trị mảng, đối số đầu tiên và thuộc tính ____37 của nó đều bị đóng băng, vì vậy bạn không thể biến đổi chúng theo bất kỳ cách nào. Dây thôThuộc tính 7 đặc biệt, có sẵn trên đối số đầu tiên cho hàm thẻ, cho phép bạn truy cập các chuỗi thô khi chúng được nhập, mà không cần xử lý các chuỗi thoát. 6Ngoài ra, phương thức 9 tồn tại để tạo các chuỗi thô giống như hàm mẫu mặc định và kết nối chuỗi sẽ tạo. 7 0 Các chức năng như thẻ "Nhận dạng" nếu chữ không chứa bất kỳ chuỗi thoát nào. Trong trường hợp bạn muốn một thẻ nhận dạng thực tế luôn hoạt động như thể chữ không được tính toán, bạn có thể tạo một chức năng tùy chỉnh vượt qua "trình tự thoát (được xử lý theo nghĩa đen), giả vờ chúng là chuỗi thô. 8Điều này rất hữu ích cho nhiều công cụ cung cấp điều trị đặc biệt cho các chữ được gắn thẻ bởi một tên cụ thể. 9Các mẫu được gắn thẻ và trình tự thoátTrong các mẫu mẫu bình thường, các chuỗi lối thoát trong các chữ viết đều được cho phép. Bất kỳ trình tự thoát không hình dạng khác là lỗi cú pháp. Điêu nay bao gôm:
Lưu ý: 0 followed by other characters, while they may be useless since nothing is escaped, are not syntax errors.Tuy nhiên, điều này là vấn đề đối với các mẫu được gắn thẻ, ngoài nghĩa đen "nấu chín", còn có quyền truy cập vào các chữ cái thô (trình tự thoát được bảo tồn AS-IS). Các mẫu được gắn thẻ sẽ cho phép nhúng các ngôn ngữ (ví dụ DSL hoặc latex), trong đó các chuỗi thoát ra khác là phổ biến. Do đó, hạn chế cú pháp của các chuỗi thoát được hình thành tốt được xóa khỏi các mẫu được gắn thẻ. 0Tuy nhiên, các chuỗi thoát bất hợp pháp vẫn phải được thể hiện trong biểu diễn "nấu chín". Chúng sẽ hiển thị dưới dạng phần tử 7 trong mảng "nấu chín": 1Lưu ý rằng việc hạn chế chuỗi thoát chỉ được loại bỏ khỏi các mẫu được gắn thẻ, nhưng không phải từ các mẫu không được gắn thẻ: 2Thông số kỹ thuật
Tính tương thích của trình duyệt webBảng BCD chỉ tải trong trình duyệt Xem thêm |