tl; dr
Gunakan Template String Literals ECMAScript 2015, jika ada.
Penjelasan
Tidak ada cara langsung untuk melakukannya, sesuai spesifikasi ECMAScript 5, tetapi ECMAScript 6 memiliki string template , yang juga dikenal sebagai quasi-literals selama penyusunan spec. Gunakan seperti ini:
> var n = 42;
undefined
> `foo${n}bar`
'foo42bar'
Anda dapat menggunakan ekspresi JavaScript apa pun yang valid di dalam {}
. Sebagai contoh:
> `foo${{name: 'Google'}.name}bar`
'fooGooglebar'
> `foo${1 + 3}bar`
'foo4bar'
Hal penting lainnya adalah, Anda tidak perlu khawatir tentang string multi-line lagi. Anda dapat menuliskannya sebagai
> `foo
... bar`
'foo\n bar'
Catatan: Saya menggunakan io.js v2.4.0 untuk mengevaluasi semua string templat yang ditunjukkan di atas. Anda juga dapat menggunakan Chrome terbaru untuk menguji contoh yang ditunjukkan di atas.
Catatan: Spesifikasi ES6 sekarang diselesaikan , tetapi belum diimplementasikan oleh semua browser utama.
Menurut halaman Jaringan Pengembang Mozilla , ini akan diterapkan untuk dukungan dasar mulai dari versi berikut: Firefox 34, Chrome 41, Internet Explorer 12. Jika Anda pengguna Opera, Safari, atau Internet Explorer dan ingin tahu tentang ini sekarang , test bed ini dapat digunakan untuk bermain-main sampai semua orang mendapat dukungan untuk ini.