Javascript’de kullanılan en sık tiplerin başında hiç şüphesiz string geliyor bu sayfada javascript fonksiyonlarının ihtiyaçlarınızı karşılaşmadığı durumda string tipine ait prototype yardımı ile yeni özellikler ve fonksiyonlar tanımlayabilirsiniz altta string tipi için eklemiş olduğumuz fonksiyonlar mevcut bu fonksiyonlar ile her yerde yapacağınız kod tekrarının önüne geçerek tek bir fonksiyon çağırma işlemi ile string işlemlerinizi kolayca gerçekleştirebilirsiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | String.prototype.repeat = function (times) { return (new Array(times + 1)).join(this); }; String.prototype.lastPart = function (delimiter) { var idx = this.lastIndexOf(delimiter); if (idx === -1) return this; return this.substr(idx + 1, this.length - idx - 1); } String.prototype.startsWith = function (this: string, str: string) { if (this.length === 0 || (str && (str.length > this.length)) || !str) return false; if (this === str) return true; return this.substr(0, str.length) === str; } String.prototype.endsWith = function (this: string, str: string) { if (this.length === 0 || (str && (str.length > this.length)) || !str) return false; if (this === str) return true; return this.substr(this.length - str.length, str.length) === str; } |
Üstteki kod typescript üzerinden yazılmıştır o yüzden üstteki kodları direkt olarak javascript dosyanızda kullanmak isterseniz : string keyword’leri gibi typescript’e özel tanımlamaları temizlemeyi unutmayınız.
Typescript için ayrıca definition type’ı altta yer almaktadır bu definition type ile intellisense’inizde string işlemlerini yaparken varsayılan olarak çıkan string fonksiyonları arasında sizinde tanımladığınız özel fonksiyonlar çıkacaktır.
1 2 3 4 5 6 | interface String { repeat(times: number); lastPart(delimiter: string): string; startsWith(str: string): boolean; endsWith(str: string): boolean; } |