文字列プロトタイプの大文字化


注:この記事はインドネシア人を対象としています

ペルケナラン



関数 pada プロトタイプに組み込まれた Javascript mempunyai banyak. Ada di array, string, object, dan lain2. Salah satu contohnya adalah String.prototype.toUpperCase() yang memungkinkan kita membuat string menjadi huruf besar.

String.prototype.toUpperCase()




const str = 'ini teks';
console.log(str.toUpperCase()) // => 'INI TEKS'


Tapi pada suatu saat kita mungkin perlu mengubah string menjadi huruf kapital, tetapi javascript tidak punya builtin function seperti itu. Jadi solusinya adalah kita membuat function sendiri seperti pada contoh berikut:

Contoh 関数の大文字化




function capitalize(str) {
  return `${str[0].toUpperCase()}${str.slice(1)}`
}
console.log(capitalize('ini teks')) // => 'Ini teks'


ペンジェラサン


str[0].toUpperCase() kode ini dapat mengubah huruf pertama pada string menjadi kapital, dan kode str.slice(1) menampilkan string dari index ke 1

ペルマサラハン



Ini bekerja dengan baik tetapi tidak seperti yang kita harapkan. Contoh yang saya buat diatas merupakan function biasa, yang bisa menjadikan kode kita sulit dibaca jika sudah terdapat banyak function. Lalu gimana cara kita dapat membuat function seperti .toUpperCase() ? Caranya seperti berikut:

String.prototype.capitalize()




String.prototype.capitalize = function() {
  return `${this[0].toUpperCase()}${this.slice(1)}`
}
console.log('ini teks'.capitalize()) // => 'Ini teks'


Isi functionnya sama dengan yang kita buat pada contoh diatas ini, tetapi penulisan kode menjadi lebih rapih karena kita mendefinisikannya langsung ke プロトタイプ, ini seakan2 menjadikan caparise seperti function bawaan javascript.

ペンジェラサン



Tetapi jika dilihat ada yang berubah、kita memakai キーワード this pada kode diatas karena this pada kode diatas mereferensikan ke string yang kita beri method capitalize, contoh:

String.prototype.capitalize = function() {
  return this
}
console.log('ini teks'.capitalize()) // => 'ini teks'


Jadi this pada kode diatas digunakan untuk menangkap stringnya, dan karena itu pula kita tidak dapat menggunakan arrow function karena keyword this akan berisi undefined