TypeScript'teki Dahili Fonksiyonlar
Bu makale, TypeScript'teki dahili fonksiyonları açıklamaktadır.
YouTube Video
TypeScript'teki Dahili Fonksiyonlar
TypeScript'teki dahili fonksiyonlar, günlük işlemleri özlü bir şekilde gerçekleştirmek için sağlanan kullanışlı fonksiyonlardır. Bunlar, TypeScript ile kod yazarken özellikle faydalı olan, ek tür güvenliği ile standart JavaScript fonksiyonlarıdır. Burada, bazı önemli dahili fonksiyonları, kullanımını ve tür spesifikasyonlarını detaylı bir şekilde açıklayacağız.
Dahili Fonksiyonlar Nedir?
TypeScript'in dahili fonksiyonları, standart JavaScript fonksiyonlarına dayanır. TypeScript'in tür sistemi uygulandığında tür kontrolü ve otomatik tamamlama iyileştirilir. Ana fonksiyonlar şunlardır:.
parseInt()
parseFloat()
isNaN()
isFinite()
Number()
String()
Array()
Array.isArray()
eval()
encodeURI()
decodeURI()
setTimeout()
setInterval()
Bu fonksiyonlar, veri dönüştürme ve değerlendirmeyi özlü bir şekilde yapmak için TypeScript projelerinde yaygın olarak kullanılır.
parseInt()
parseInt()
bir string'i tamsayıya dönüştürmek için kullanılan bir fonksiyondur. İkinci argüman olarak tabanı (örn. ikili, ondalık) belirtebilirsiniz. TypeScript'te türü şu şekilde belirtebilirsiniz:.
1function stringToInt(value: string, radix: number = 10): number {
2 const result: number = parseInt(value, radix);
3 if (isNaN(result)) {
4 throw new Error('Invalid number format');
5 }
6 return result;
7}
8
9console.log(stringToInt("42")); // 42
10console.log(stringToInt("101010", 2)); // 42 (converted from binary)
- Girişin bir string olduğunu
value: string
ile belirtin - Dönüş değeri açıkça bir
number
türü olarak belirtilmiştir.
parseFloat()
parseFloat()
bir string'i ondalıklı sayıya dönüştürmek için kullanılan bir fonksiyondur.
1function stringToFloat(value: string): number {
2 const result: number = parseFloat(value);
3 if (isNaN(result)) {
4 throw new Error('Invalid number format');
5 }
6 return result;
7}
8
9console.log(stringToFloat("3.14")); // 3.14
10console.log(stringToFloat("2.71828")); // 2.71828
parseFloat()
ondalık noktaları içeren sayıları doğru bir şekilde ayrıştırabilir.- Türü belirterek, giriş bir sayı değilse tür kontrolü sırasında bir uyarı alabilirsiniz.
isNaN()
isNaN()
verilen değerin NaN
(Bir sayı değil) olup olmadığını belirleyen bir fonksiyondur. TypeScript'te bir kullanım örneği şu şekildedir:.
1function checkNaN(value: unknown): boolean {
2 return isNaN(Number(value));
3}
4
5console.log(checkNaN("hello")); // true
6console.log(checkNaN(123)); // false
unknown
türü, herhangi bir türü kabul edebilen genel bir türdür.Number()
fonksiyonunu kullanarak bir sayıya dönüştürün ve sonucunNaN
olup olmadığını kontrol edin.
isFinite()
isFinite()
bir değerin sonlu olup olmadığını belirler.
1function isValueFinite(value: unknown): boolean {
2 return isFinite(Number(value));
3}
4
5console.log(isValueFinite("100")); // true
6console.log(isValueFinite(Infinity)); // false
- Bu fonksiyon, değeri belirlemeden önce bir sayıya dönüştürmek için
Number()
fonksiyonunu da kullanır.
Number()
Number()
fonksiyonu, string veya boolean değerlerini sayılara dönüştürür.
1function convertToNumber(value: string | boolean): number {
2 return Number(value);
3}
4
5console.log(convertToNumber("42")); // 42
6console.log(convertToNumber(true)); // 1
- Bu örnekte, argümanın bir dize veya bir boolean olduğunu belirtmek için
string | boolean
birleşim türü kullanılıyor.
String()
String()
fonksiyonu, sayıları veya boolean değerlerini string (dize) türüne dönüştürür.
1function convertToString(value: number | boolean): string {
2 return String(value);
3}
4
5console.log(convertToString(123)); // "123"
6console.log(convertToString(false)); // "false"
- Bu örnekte,
number | boolean
türünü kabul eden ve sonucu bir dizeye dönüştüren bir fonksiyon oluşturuluyor.
Array()
Array()
fonksiyonu, yeni bir dizi oluşturmak için kullanılır. Ayrıca, mevcut dizilerden alt diziler oluşturmak veya belirli öğeleri çıkarmak için birçok kullanışlı yöntem sunar.
1function createArray(): Array<number> {
2 return Array(1, 2, 3, 4, 5); // 新しい配列を作成
3}
4
5function getSubArray(array: Array<number>): Array<number> {
6 return array.slice(1, 4); // サブ配列を作成
7}
8
9const numbers = createArray();
10console.log(numbers); // [1, 2, 3, 4, 5]
11
12const subArray = getSubArray(numbers);
13console.log(subArray); // [2, 3, 4]
- Bu örnek,
Array()
fonksiyonunu kullanarak nasıl yeni bir dizi oluşturulacağını veslice()
yöntemiyle bir alt dizi oluşturulacağını gösterir.
Array.isArray()
Array.isArray()
verilen değerin bir dizi olup olmadığını belirler.
1function checkArray(value: unknown): boolean {
2 return Array.isArray(value);
3}
4
5console.log(checkArray([1, 2, 3])); // true
6console.log(checkArray("Not an array")); // false
unknown
türü kullanılarak, herhangi bir tür kabul edilirken bunun bir dizi olup olmadığı kontrol edilir.
eval()
eval()
fonksiyonu, bir stringi ifade olarak değerlendirir ve sonucu döndürür. Ancak güvenlik ve performans riskleri nedeniyle kullanılması tavsiye edilmez.
1function evaluateExpression(expression: string): any {
2 return eval(expression);
3}
4
5console.log(evaluateExpression("2 + 3")); // 5
6console.log(evaluateExpression("'Hello ' + 'World!'")); // "Hello World!"
- Bu örnekte, bir dize olarak verilen ifade
eval
kullanılarak değerlendirilir ve sonuç çıktılanır.
encodeURI()
encodeURI()
fonksiyonu, tüm URL'yi kodlar ve bazı karakterleri kaçış karakterine dönüştürür.
1const uri = "https://example.com/page?name=John Doe&age=30";
2const encodedURI = encodeURI(uri);
3
4console.log(encodedURI); // "https://example.com/page?name=John%20Doe&age=30"
- Bu örnek, boşlukları
%20
olarak kodlayarak güvenli bir URL oluşturur.
decodeURI()
decodeURI()
fonksiyonu, kodlanmış bir URL'yi orijinal biçimine geri dönüştürür.
1const encodedURI = "https://example.com/page?name=John%20Doe&age=30";
2const decodedURI = decodeURI(encodedURI);
3
4console.log(decodedURI); // "https://example.com/page?name=John Doe&age=30"
- Bu örnek, kodlanmış bir URL dizesini orijinal URL'ye geri çözer.
setTimeout()
setTimeout()
fonksiyonu, belirtilen gecikme süresinden (milisaniye cinsinden) sonra belirtilen fonksiyonu çalıştırır.
1setTimeout(() => {
2 console.log("Executed after 2 seconds");
3}, 2000);
- Bu örnek, 2 saniye sonra bir mesaj görüntüler.
setInterval()
setInterval()
fonksiyonu, belirtilen aralıklarla (milisaniye cinsinden) belirli bir fonksiyonu tekrar tekrar çalıştırır.
1let count = 0;
2const intervalId = setInterval(() => {
3 count++;
4 console.log(`Interval executed ${count} time(s)`);
5 if (count === 3) {
6 clearInterval(intervalId); // Stops the interval after 3 executions
7 }
8}, 1000);
- Bu örnek, birer saniyelik aralıklarla bir mesaj görüntüler ve üç kez çalıştırıldıktan sonra durur.
Sonuç
TypeScript'in yerleşik fonksiyonları, standart JavaScript fonksiyonlarına tür güvenliği ekleyerek daha güvenli ve verimli bir kodlama sağlar. Bu fonksiyonlar günlük programlama görevlerini basitleştirir ve kod okunabilirliğini ve sürdürülebilirliğini artırır. Her fonksiyon amacına uygun şekilde kullanılır ve türler belirtilerek önceden hatalar tespit edilebilir, bu da geliştirme sürecinin güvenilirliğini artırmada önemli bir rol oynar.
TypeScript kullanarak geliştirme sürecinde JavaScript'in esnekliğinden faydalanılırken statik türlerden de yararlanılabilir.
Yukarıdaki makaleyi, YouTube kanalımızda Visual Studio Code'u kullanarak takip edebilirsiniz. Lütfen YouTube kanalını da kontrol edin.