JavaScript memperlakukan string seperti object karena itu variable bertipe string bisa mempunyai properti dan fungsi. Properti digunakan untuk mendapatkan informasi terhadap variable tersebut. Fungsi digunakan untuk melakukan suatu proses pada string.
Properti length
Properti length digunakan untuk mengetahui panjang karakter string.
var txt = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var sln = txt.length;
Mencari String Di Dalam String
Fungsi indexOf digunakan untuk mencari posisi (index) pertama suatu string dalam string yang lain. Contoh di bawah memperlihatkan cara mengetahui posisi string “locate” di dalam string “Please locate ‘locate’ occurs!”. Posisi karakter dihitung mulai dari 0.
var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("locate");
Fungsi lastIndexOf digunakan untuk mencari posisi terakhir suatu string dalam string yang lain.
var str = "Please locate where 'locate' occurs!";
var pos = str.lastIndexOf("locate");
Fungsi indexOf ataupun lastIndexOf akan mengembalikan -1 apabila string yang dicari tidak ditemukan.
var str = "Please locate where 'locate' occurs!";
var pos = str.lastIndexOf("John");
Posisi awal pencarian dimulai dapat dimasukkan sebagai parameter kedua fungsi indexOf.
var str = "Please locate where 'locate' occurs!";
var pos = str.indexOf("locate", 15);
Posisi awal pencarian dimulai juga dapat dimasukkan sebagai parameter kedua fungsi lastIndexOf. Bedanya posisi awal ini dihitung dari posisi terakhir.
var str = "Please locate where 'locate' occurs!";
var pos = str.lastIndexOf("locate", 15);
Fungsi search sama dengan fungsi indexOf tapi fungsi search tidak mempunyai parameter kedua.
var str = "Please locate where 'locate' occurs!";
var pos = str.search("locate");
Mengambil Potongan String
Fungsi slice mengambil potongan string berdasarkan posisi. Parameter pertama fungsi adalah posisi awal potongan. Parameter kedua fungsi adalah posisi akhir potongan dikurangi 1. Contoh di bawah ini mengambil potongan text mulai dari posisi 7 sampai 12.
var str = "Apple, Banana, Kiwi";
var res = str.slice(7, 13);
Apabila parameter bernilai negatif maka posisi dihitung mulai dari posisi terakhir.
var str = "Apple, Banana, Kiwi";
var res = str.slice(-12, -6);
Fungsi slice akan memotong string sampai ke posisi terakhir apabila parameter kedua tidak diberikan.
var res = str.slice(7);
Fungsi slice akan memotong dihitung dari posisi terakhir apabila parameter pertama bernilai negatif dan parameter kedua tidak diberikan.
var res = str.slice(-12);
Fungsi substring sama seperti fungsi slice, bedanya tidak menerima paramter bernilai negatif.
var str = "Apple, Banana, Kiwi";
var res = str.substring(7, 13);
Fungsi substr sama seperti fungsi slice, bedanya parameter kedua adalah panjang potongan yang diinginkan.
var str = "Apple, Banana, Kiwi";
var res = str.substr(7, 6);
Fungsi substr akan memotong string sampai ke posisi terakhir apabila parameter kedua tidak diberikan
var str = "Apple, Banana, Kiwi";
var res = str.substr(7);
Apabila parameter bernilai negatif maka potongan dihitung dari posisi terakhir.
var str = "Apple, Banana, Kiwi";
var res = str.substr(-4);
Mengganti Text
Fungsi replace mengganti text tertentu dalam suatu string dengan text yang lain. Parameter pertama adalah text yang akan diganti. Parameter kedua adalah text pengganti.
str = "Please visit Microsoft!";
var n = str.replace("Microsoft", "W3Schools");
Perlu diperhatikan, fungsi replace tidak mengganti string awal tapi mengembalikan string baru.
Fungsi replace hanya mengganti text yang pertama kali ditemukan.
str = "Please visit Microsoft and Microsoft!";
var n = str.replace("Microsoft", "W3Schools");
Fungsi replace adalah case sensitive. Microsoft tidak sama dengan MICROSOFT.
str = "Please visit Microsoft!";
var n = str.replace("MICROSOFT", "W3Schools");
Untuk menghilangkan sifat case sensitive tambahkan regular expression /i.
str = "Please visit Microsoft!";
var n = str.replace(/MICROSOFT/i, "W3Schools");
Gunakan regular expression /g untuk memakai global match.
str = "Please visit Microsoft and Microsoft!";
var n = str.replace(/Microsoft/g, "W3Schools");
Topik regular expression akan dibahas lebih detil pada tutorial selanjutnya.
Huruf Besar Dan Huruf Kecil
Fungsi toUpperCase mengubah string menjadi huruf besar.
var text1 = "Hello World!"; // String
var text2 = text1.toUpperCase(); // text2 is text1 converted to upper
Fungsi toLowerCase mengubah string menjadi huruf kecil.
var text1 = "Hello World!"; // String
var text2 = text1.toLowerCase(); // text2 is text1 converted to lower
Menggabungkan String
Fungsi concat berfungsi untuk menggabungkan dua string.
var text1 = "Hello";
var text2 = "World";
var text3 = text1.concat(" ", text2);
Fungsi concat fungsinya sama seperti operator + pada string.
var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ", "World!");
Trim
Trim adalah menghapus spasi pada bagian awal dan akhir suatu text.
var str = " Hello World! ";
alert(str.trim());
Fungsi trim tidak tersedia pada web browser Internet Explorer versi 8 ke bawah. Sebagai gantinya kita bisa menggunakan fungsi replace dan regular expression.
var str = " Hello World! ";
alert(str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''));
Solusi lain untuk IE 8 ke bawah adalah dengan memakai fungsi prototype seperti contoh di bawah ini.
if (!String.prototype.trim) {
String.prototype.trim = function () {
return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, '');
};
}
var str = " Hello World! ";
alert(str.trim());
Mengambil Karakter Tertentu
Fungsi charAt akan mengembalikan karakter pada posisi tertentu dalam suatu string.
var str = "HELLO WORLD";
str.charAt(0); // returns H
Fungsi charCodeAt akan mengembalikan karakter dalam bentuk UTF-16 format.
var str = "HELLO WORLD";
str.charCodeAt(0); // returns 72
String juga dapat diperlakukan seperti array. Kita bisa mengambil karakter pada posisi tertentu dengan cara seperti contoh di bawah.
var str = "HELLO WORLD";
str[0]; // returns H
String Sebagai Array
Gunakan fungsi split untuk mengubah string menjadi array. Parameter fungsi adalah karakter pemisah pada text.
var txt = "a,b,c,d,e"; // String
txt.split(","); // Split on commas
txt.split(" "); // Split on spaces
txt.split("|"); // Split on pipe
Apabila karakter pemisah tidak diberikan maka array akan berisi setiap karakter pada string.
var txt = "Hello"; // String
txt.split(""); // Split in characters
Tutorial sebelumnya : JavaScript Text Atau String
Tutorial setelahnya : JavaScript Angka Atau Number
Semua Tutorial JavaScript : Tutorial JavaScript