Blogger Jateng

Template Literal: Interpolasi String yang Lebih Bersih di ES6

ECMAScript 6 (ES6) memperkenalkan banyak fitur baru untuk JavaScript, di antaranya adalah template literal yang merupakan fitur yang sangat kuat. Gunakan template string ketika bekerja dengan string karena mereka menawarkan solusi yang lebih mudah dibaca, singkat, dan fleksibel dalam JS, terutama untuk interpolasi string dan string multiline. Pada artikel berikut, kita akan membahas apa itu template literal, sintaksisnya, dan bagaimana mereka mengubah permainan terkait dengan notasi titik untuk JavaScript.

Apa yang dimaksud dengan Template Literal?


Template literal (juga disebut string template) adalah string literal yang memungkinkan ekspresi yang disematkan. Jika tanda kutip tunggal (') dan ganda (") digunakan untuk mendefinisikan string biasa, template literal menggunakan tanda kutip (`). Dengan demikian, pengembang dapat menggunakan interpolasi string dengan solusi ini yang membuat kode menjadi lebih bersih dan sederhana.

Sebagai contoh, penggabungan string tradisional vs template literal:

Penggabungan String Tradisional:

const name = 'Alice';
const greeting = 'Hello, ' + name + '! How are you today?';
console.log(greeting);

Menggunakan Template Literal:

const name = 'Alice';
const greeting = `Hello, ${name}! How are you today?`;
console.log(greeting);

Sekarang, seperti yang Anda lihat, kita tidak perlu mengulang operator + saat menggunakan template literal dan kode yang lebih rapi.
sumber: medium.com

Karakteristik Penting dari Template Literal

1. Interpolasi String

Interpolasi string adalah kasus penggunaan template literal yang paling favorit. Sintaks ${} memungkinkan pengembang untuk menyematkan ekspresi apa pun yang mereka inginkan dalam sebuah string. Hal ini sangat berguna terutama ketika bekerja dengan variabel, properti objek atau hasil fungsi.

Contoh:
const product = 'laptop';
const price = 999.99;
console.log(`The price of the ${product} is $${price}.`);

2. String Multiline

Tidak seperti ES6 yang memungkinkan pembuatan string multibaris dengan mudah menggunakan template literal (dengan tanda centang), sebelum ES6 tidak ada cara langsung untuk membuat string multibaris tanpa cara yang biasa digunakan dan tidak diinginkan dalam JavaScript untuk memperlakukan string, seperti penggabungan string dengan karakter baris baru (\n) dan array. Untuk mengatasi masalah ini, ES6 dilengkapi dengan Template literal yang membuat string multi-baris mudah dibuat.

Contoh:

const message = `This is a multiline string.

It spans multiple lines

without extra syntax.`;

console.log(message);

3. Ekspresi Tersemat

String di dalam ${} bisa lebih dari sekedar nama variabel. Penalaran: Pengembang dapat menggunakan ekspresi JavaScript apa pun yang valid, termasuk operasi matematika, pemanggilan fungsi, dan operator terner.

Contoh:

 const a = 5;

const b = 10;

console.log(`The sum of ${a} and ${b} is ${a + b}.`);

4. Templat yang Ditandai

Fitur yang kurang umum digunakan, tetapi mengesankan adalah tagged template. Tag adalah fungsi yang memproses literal template. Hal ini memungkinkan pengembang untuk menyesuaikan keluaran string dengan cara yang sewenang-wenang, sehingga berguna untuk operasi seperti keluar dari HTML atau melokalisasi string.

Contoh:

function highlight(strings, ...values) {

  return strings.reduce((result, str, i) => {

    return `${result}${str}<strong>${values[i] || ''}</strong>`;

  }, '');

}


const name = 'Alice';

const activity = 'coding';

console.log(highlight`Welcome, ${name}! Enjoy ${activity} today!`);

Keluaran:

Welcome, <strong>Alice</strong>! Enjoy <strong>coding</strong> today!

Manfaat Template Literal

  1. Lebih Mudah Dibaca: Template literal memberikan keterbacaan yang lebih baik, terutama ketika bekerja dengan interpolasi yang kompleks.
  2. Lebih Sedikit Boilerplate: Template literal membutuhkan lebih sedikit kode untuk digunakan daripada cara tradisional untuk menggabungkan string. 
  3. Fleksibilitas yang Lebih Baik: Templat multiline dan tag memperkenalkan dimensi baru pada komposisi string.
  4. Mudah untuk Debug: Menggunakan sintaks yang bersih mengurangi kemungkinan membuat kesalahan dan memungkinkan debugging yang lebih mudah.

Kapan Menggunakan Template Literal

Template literal sangat cocok untuk:

  • Membuat string yang berisi variabel atau ekspresi.
  • Menulis string multiline tanpa sintaks tambahan.
  • Membuat template HTML atau output yang diformat.
  • Melokalkan string dengan templat yang ditandai

Namun, jika string Anda hanyalah string statis sederhana, tanda kutip boleh digunakan-baik tanda kutip tunggal maupun ganda.

Kesimpulan

ES6 Template string adalah tambahan yang berguna untuk JavaScript, mereka membuat penanganan string menjadi lebih sederhana. Mereka meningkatkan keterbacaan kode, menghilangkan verbositas, dan menawarkan fitur-fitur canggih seperti interpolasi, string multiline, dan template yang ditandai. Javascript Template Literals adalah tambahan baru dalam Javascript yang memungkinkan untuk memecah string menjadi beberapa bagian dengan mudah sehingga memberikan kode yang lebih bersih, lebih sederhana, dan mudah dibaca daripada sebelumnya. Tidak peduli tingkat keahlian Anda, jika Anda memiliki pengetahuan tentang JavaScript, ini adalah langkah kecil menuju praktik pengkodean yang lebih modern dan mudah dipelihara.