CodeBlanks Logo Icon CodeBlanks

Buffer concat

Buffer.concat ile buffer birleştirmeyi öğrenirsin.

Buffer.concat

Buffer.concat() bir buffer dizisini tek bir buffer'a birleştirir. Parça parça gelen veriyi toplamak için idealdir; örneğin bir akıştan gelen chunk'ları birleştirebilirsin.

Örneğin Buffer.concat([Buffer.from("mer"), Buffer.from("haba")]) yedi bytelık tek bir buffer verir. Sonuç .toString() ile metne çevrildiğinde merhaba elde edersin. İkinci argüman olarak toplam uzunluk verebilirsin; bu, Node.js'in hesap yapmasını engelleyerek hız kazandırır. Böylece küçük parçaları kolayca birleştirirsin.

totalLength parametresi

Buffer.concat'a ikinci argüman olarak totalLength verebilirsin. Bu, sonuç buffer'ın toplam byte sayısıdır. Vermezsen Node.js tüm öğelerin uzunluğunu toplayarak hesaplar.

Örneğin Buffer.concat([a, b], a.length + b.length) açıkça toplamı belirtir. Büyük dizilerde bu hesabı kendin yapmak performans kazandırır; çünkü Node.js her öğeyi dolaşıp toplamak zorunda kalmaz. Yine de yanlış bir totalLength verirsen sonuç beklenenden kısa veya uzun olabilir. Güvenli taraf, hesabı doğru yaptığından emin olmaktır.

Uygulama İki buffer'ı birleştir ve metne çevir

Buffer.concat ile Buffer.from("mer") ve Buffer.from("haba")'yı birleştir. .toString() ile metne çevirip console.log ile yazdır.

Başlangıç kodu

index.js
// Buffer.concat ile iki buffer'ı birleştir
// buraya yaz

// Sonucu toString ile metne çevir
// buraya yaz

// console.log ile yazdır
// buraya yaz

Örnek çözüm

index.js
console.log(Buffer.concat([Buffer.from("mer"), Buffer.from("haba")]).toString());

Beklenen çıktı

merhaba

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Buffer.concat ne alır?

index.js
Buffer.concat([...])
  • Bir sayı
  • Tek bir dize
  • Bir buffer dizisi Doğru cevap
  • Bir fonksiyon

Açıklama: concat bir buffer dizisi alır ve tek buffer döndürür.

2 concat çağrısını tamamla

Soru
const result = Buffer.concat([Buffer.from("mer"), Buffer.____("haba")]);
Cevap
const result = Buffer.concat([Buffer.from("mer"), Buffer.from("haba")]);

Açıklama: İkinci parça da Buffer.from ile oluşturulur.

3 Parçayı rolüne eşle

Kavram Anlamı
Buffer.concat Buffer'ları birleştirir
dizi Buffer listesi
toString Metne çevirir
totalLength Toplam byte sayısı

Orta seviye bölümündeki tüm dersler