Node.js - Tamponlar

Saf JavaScript Unicode dostudur, ancak ikili veriler için böyle değildir. TCP akışları veya dosya sistemi ile uğraşırken, sekizli akışları işlemek gerekir. Düğüm, ham verileri bir tamsayı dizisine benzer şekilde depolamak için örnekler sağlayan, ancak V8 yığını dışındaki bir ham bellek tahsisine karşılık gelen Buffer sınıfı sağlar.

Buffer sınıfı, tampon modülünü içe aktarmadan bir uygulamada erişilebilen global bir sınıftır.

Tamponlar Oluşturma

Düğüm Tamponu çeşitli şekillerde oluşturulabilir.

Yöntem 1

Aşağıda, başlatılmamış bir Arabellek oluşturmak için sözdizimi verilmiştir. 10 sekizli -

var buf = new Buffer(10);

Yöntem 2

Aşağıda, belirli bir diziden Tampon oluşturmak için sözdizimi verilmiştir -

var buf = new Buffer([10, 20, 30, 40, 50]);

Yöntem 3

Aşağıda, belirli bir dizeden ve isteğe bağlı olarak kodlama türünden bir Buffer oluşturmak için sözdizimi verilmiştir -

var buf = new Buffer("Simply Easy Learning", "utf-8");

Varsayılan kodlama "utf8" olsa da, "ascii", "utf8", "utf16le", "ucs2", "base64" veya "hex" kodlamalardan herhangi birini kullanabilirsiniz.

Tamponlara Yazma

Sözdizimi

Aşağıda bir Düğüm Arabelleğine yazma yönteminin sözdizimi verilmiştir -

buf.write(string[, offset][, length][, encoding])

Parametreler

İşte kullanılan parametrelerin açıklaması -

  • string - Bu, arabelleğe yazılacak dize verileridir.

  • offset- Bu, yazmaya başlamak için tamponun dizinidir. Varsayılan değer 0'dır.

  • length- Bu, yazılacak bayt sayısıdır. Buffer.length öntanımlıdır.

  • encoding- Kullanılacak kodlama. 'utf8' varsayılan kodlamadır.

Geri dönüş değeri

Bu yöntem, yazılan sekizli sayısını döndürür. Tamponda dizgenin tamamına sığacak kadar boşluk yoksa dizenin bir kısmını yazacaktır.

Misal

buf = new Buffer(256);
len = buf.write("Simply Easy Learning");

console.log("Octets written : "+  len);

Yukarıdaki program yürütüldüğünde, aşağıdaki sonucu verir -

Octets written : 20

Tamponlardan Okuma

Sözdizimi

Bir Düğüm Arabelleğinden veri okuma yönteminin sözdizimi aşağıdadır -

buf.toString([encoding][, start][, end])

Parametreler

İşte kullanılan parametrelerin açıklaması -

  • encoding- Kullanılacak kodlama. 'utf8' varsayılan kodlamadır.

  • start - Okumaya başlamak için başlangıç ​​dizini, varsayılan olarak 0'dır.

  • end - Okumayı bitirmek için endeksi bitir, varsayılanlar tam arabellek.

Geri dönüş değeri

Bu yöntem, belirtilen karakter kümesi kodlaması kullanılarak kodlanmış arabellek verilerinden bir dizenin kodunu çözer ve döndürür.

Misal

buf = new Buffer(26);
for (var i = 0 ; i < 26 ; i++) {
  buf[i] = i + 97;
}

console.log( buf.toString('ascii'));       // outputs: abcdefghijklmnopqrstuvwxyz
console.log( buf.toString('ascii',0,5));   // outputs: abcde
console.log( buf.toString('utf8',0,5));    // outputs: abcde
console.log( buf.toString(undefined,0,5)); // encoding defaults to 'utf8', outputs abcde

Yukarıdaki program yürütüldüğünde, aşağıdaki sonucu verir -

abcdefghijklmnopqrstuvwxyz
abcde
abcde
abcde

Arabelleği JSON'a Dönüştür

Sözdizimi

Bir Düğüm Arabelleğini JSON nesnesine dönüştürme yönteminin sözdizimi aşağıdadır -

buf.toJSON()

Geri dönüş değeri

Bu yöntem, Buffer örneğinin JSON temsilini döndürür.

Misal

var buf = new Buffer('Simply Easy Learning');
var json = buf.toJSON(buf);

console.log(json);

Yukarıdaki program yürütüldüğünde, aşağıdaki sonucu verir -

{ type: 'Buffer',
   data: 
   [ 
      83,
      105,
      109,
      112,
      108,
      121,
      32,
      69,
      97,
      115,
      121,
      32,
      76,
      101,
      97,
      114,
      110,
      105,
      110,
      103 
   ]
}

Tamponları Birleştir

Sözdizimi

Aşağıda, Düğüm arabelleklerini tek bir Düğüm Arabelleğine bağlama yönteminin sözdizimi verilmiştir -

Buffer.concat(list[, totalLength])

Parametreler

İşte kullanılan parametrelerin açıklaması -

  • list - Birleştirilecek Buffer nesnelerinin Dizi Listesi.

  • totalLength - Bu, birleştirildiğinde tamponların toplam uzunluğudur.

Geri dönüş değeri

Bu yöntem bir Buffer örneği döndürür.

Misal

var buffer1 = new Buffer('TutorialsPoint ');
var buffer2 = new Buffer('Simply Easy Learning');
var buffer3 = Buffer.concat([buffer1,buffer2]);

console.log("buffer3 content: " + buffer3.toString());

Yukarıdaki program yürütüldüğünde, aşağıdaki sonucu verir -

buffer3 content: TutorialsPoint Simply Easy Learning

Tamponları Karşılaştır

Sözdizimi

Aşağıda, iki Düğüm arabelleğini karşılaştırmak için kullanılan yöntemin sözdizimi verilmiştir -

buf.compare(otherBuffer);

Parametreler

İşte kullanılan parametrelerin açıklaması -

  • otherBuffer - Bu, karşılaştırılacak diğer tampondur buf

Geri dönüş değeri

Sıralama düzeninde otherBuffer'dan önce mi sonra mı geldiğini yoksa aynı olduğunu gösteren bir sayı döndürür.

Misal

var buffer1 = new Buffer('ABC');
var buffer2 = new Buffer('ABCD');
var result = buffer1.compare(buffer2);

if(result < 0) {
   console.log(buffer1 +" comes before " + buffer2);
} else if(result === 0) {
   console.log(buffer1 +" is same as " + buffer2);
} else {
   console.log(buffer1 +" comes after " + buffer2);
}

Yukarıdaki program yürütüldüğünde, aşağıdaki sonucu verir -

ABC comes before ABCD

Arabelleği Kopyala

Sözdizimi

Bir düğüm arabelleğini kopyalama yönteminin sözdizimi aşağıdadır -

buf.copy(targetBuffer[, targetStart][, sourceStart][, sourceEnd])

Parametreler

İşte kullanılan parametrelerin açıklaması -

  • targetBuffer - Tamponun kopyalanacağı tampon nesnesi.

  • targetStart - Sayı, İsteğe Bağlı, Varsayılan: 0

  • sourceStart - Sayı, İsteğe Bağlı, Varsayılan: 0

  • sourceEnd - Sayı, İsteğe Bağlı, Varsayılan: buffer.length

Geri dönüş değeri

Dönüş değeri yok. Hedef bellek bölgesi kaynakla çakışsa bile, bu arabelleğin bir bölgesinden verileri hedef arabellekteki bir bölgeye kopyalar. Tanımlanmamışsa, targetStart ve sourceStart parametreleri varsayılan olarak 0'a, sourceEnd ise buffer.length'e varsayılan olur.

Misal

var buffer1 = new Buffer('ABC');

//copy a buffer
var buffer2 = new Buffer(3);
buffer1.copy(buffer2);
console.log("buffer2 content: " + buffer2.toString());

Yukarıdaki program yürütüldüğünde, aşağıdaki sonucu verir -

buffer2 content: ABC

Dilim Tampon

Sözdizimi

Aşağıda, bir düğüm arabelleğinin bir alt arabelleğini almak için yöntemin sözdizimi verilmiştir -

buf.slice([start][, end])

Parametreler

İşte kullanılan parametrelerin açıklaması -

  • start - Sayı, İsteğe Bağlı, Varsayılan: 0

  • end - Sayı, İsteğe Bağlı, Varsayılan: buffer.length

Geri dönüş değeri

Eskisiyle aynı belleğe başvuran, ancak başlangıç ​​(varsayılan olarak 0'dır) ve bitiş (varsayılan olarak buffer.length) dizinlerine göre ofset ve kırpılmış yeni bir arabellek döndürür. Negatif dizinler arabelleğin sonundan başlar.

Misal

var buffer1 = new Buffer('TutorialsPoint');

//slicing a buffer
var buffer2 = buffer1.slice(0,9);
console.log("buffer2 content: " + buffer2.toString());

Yukarıdaki program yürütüldüğünde, aşağıdaki sonucu verir -

buffer2 content: Tutorials

Tampon Uzunluğu

Sözdizimi

Aşağıda, bayt cinsinden bir düğüm arabelleğinin boyutunu elde etmek için yöntemin sözdizimi verilmiştir -

buf.length;

Geri dönüş değeri

Bayt cinsinden arabellek boyutunu döndürür.

Misal

var buffer = new Buffer('TutorialsPoint');

//length of the buffer
console.log("buffer length: " + buffer.length);

Yukarıdaki program yürütüldüğünde, aşağıdaki sonucu verir -

buffer length: 14

Yöntem Referansı

Sr.No. Yöntem ve Açıklama
1

new Buffer(size)

Boyut sekizli yeni bir arabellek ayırır. Boyutun kMaxLength'den fazla olmaması gerektiğini unutmayın. Aksi takdirde, burada bir RangeError hatası atılır.

2

new Buffer(buffer)

Aktarılan arabellek verilerini yeni bir Buffer örneğine kopyalar.

3

new Buffer(str[, encoding])

Verilen dizeyi içeren yeni bir tampon ayırır. kodlama varsayılan olarak "utf8" dir.

4

buf.length

Arabelleğin boyutunu bayt cinsinden döndürür. Bunun mutlaka içeriğin boyutu olmadığını unutmayın. uzunluk, arabellek nesnesi için ayrılan bellek miktarını ifade eder. Tamponun içeriği değiştirildiğinde değişmez.

5

buf.write(string[, offset][, length][, encoding])

Belirtilen kodlamayı kullanarak ofsette arabelleğe bir dize yazar. ofset varsayılan olarak 0'dır, kodlama varsayılanı "utf8" dir. uzunluk, yazılacak bayt sayısıdır. Yazılan sekizli sayısını döndürür.

6

buf.writeUIntLE(value, offset, byteLength[, noAssert])

Belirtilen ofset ve byteLength değerinde arabelleğe bir değer yazar. 48 bit doğruluğa kadar destekler. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Varsayılan olarak yanlıştır.

7

buf.writeUIntBE(value, offset, byteLength[, noAssert])

Belirtilen ofset ve byteLength değerinde arabelleğe bir değer yazar. 48 bit doğruluğa kadar destekler. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Varsayılan olarak yanlıştır.

8

buf.writeIntLE(value, offset, byteLength[, noAssert])

Belirtilen ofset ve byteLength değerinde arabelleğe bir değer yazar. 48 bit doğruluğa kadar destekler. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Varsayılan olarak yanlıştır.

9

buf.writeIntBE(value, offset, byteLength[, noAssert])

Belirtilen ofset ve byteLength değerinde arabelleğe bir değer yazar. 48 bit doğruluğa kadar destekler. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Varsayılan olarak yanlıştır.

10

buf.readUIntLE(offset, byteLength[, noAssert])

Tüm sayısal okuma yöntemlerinin genelleştirilmiş bir versiyonu. 48 bit doğruluğa kadar destekler. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

11

buf.readUIntBE(offset, byteLength[, noAssert])

Tüm sayısal okuma yöntemlerinin genelleştirilmiş bir versiyonu. 48 bit doğruluğa kadar destekler. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

12

buf.readIntLE(offset, byteLength[, noAssert])

Tüm sayısal okuma yöntemlerinin genelleştirilmiş bir versiyonu. 48 bit doğruluğa kadar destekler. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

13

buf.readIntBE(offset, byteLength[, noAssert])

Tüm sayısal okuma yöntemlerinin genelleştirilmiş bir versiyonu. 48 bit doğruluğa kadar destekler. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

14

buf.toString([encoding][, start][, end])

Belirtilen karakter kümesi kodlaması kullanılarak kodlanmış arabellek verilerinden bir dizenin kodunu çözer ve döndürür.

15

buf.toJSON()

Buffer örneğinin JSON temsilini döndürür. JSON.stringify, bir Buffer örneğini dizge haline getirirken bu işlevi örtük olarak çağırır.

16

buf[index]

Okteti dizine alın ve ayarlayın. Değerler ayrı baytlara atıfta bulunur, bu nedenle yasal aralık 0x00 ile 0xFF hex veya 0 ile 255 arasındadır.

17

buf.equals(otherBuffer)

Bu arabellek ve diğerBuffer aynı bayta sahipse bir boole döndürür.

18

buf.compare(otherBuffer)

Sıralama düzeninde bu arabelleğin otherBuffer'dan önce mi yoksa sonra mı geldiğini gösteren bir sayı döndürür.

19

buf.copy(targetBuffer[, targetStart][, sourceStart][, sourceEnd])

Hedef bellek bölgesi kaynakla çakışsa bile, bu arabelleğin bir bölgesinden verileri hedef arabellekteki bir bölgeye kopyalar. Tanımlanmamışsa, targetStart ve sourceStart parametreleri varsayılan olarak 0'a, sourceEnd ise buffer.length'e varsayılan olur.

20

buf.slice([start][, end])

Eskisiyle aynı belleğe başvuran, ancak başlangıç ​​(varsayılan olarak 0'dır) ve bitiş (varsayılan olarak buffer.length) dizinlerine göre ofset ve kırpılmış yeni bir arabellek döndürür. Negatif dizinler arabelleğin sonundan başlar.

21

buf.readUInt8(offset[, noAssert])

Belirtilen ofsette arabellekten işaretsiz 8 bitlik bir tamsayı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

22

buf.readUInt16LE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten işaretsiz 16 bitlik bir tamsayı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

23

buf.readUInt16BE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten işaretsiz 16 bitlik bir tamsayı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

24

buf.readUInt32LE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten işaretsiz 32 bitlik bir tamsayı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

25

buf.readUInt32BE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten işaretsiz 32 bitlik bir tamsayı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

26

buf.readInt8(offset[, noAssert])

Belirtilen uzaklıktaki arabellekten işaretli bir 8 bitlik tamsayı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

27

buf.readInt16LE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten işaretli bir 16 bit tamsayıyı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

28

buf.readInt16BE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten işaretli bir 16 bit tamsayıyı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

29

buf.readInt32LE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten işaretli bir 32 bit tamsayıyı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

30

buf.readInt32BE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten işaretli bir 32 bit tamsayıyı okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

31

buf.readFloatLE(offset[, noAssert])

Belirtilen endian biçimiyle, belirtilen uzaklıktaki arabellekten 32 bitlik bir kayan nokta okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

32

buf.readFloatBE(offset[, noAssert])

Belirtilen endian biçimiyle, belirtilen uzaklıktaki arabellekten 32 bitlik bir kayan nokta okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

33

buf.readDoubleLE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten 64 bitlik bir çift okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

34

buf.readDoubleBE(offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabellekten 64 bitlik bir çift okur. Göreli konumun doğrulanmasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, ofsetin arabelleğin sonunun ötesinde olabileceği anlamına gelir. Varsayılan olarak yanlıştır.

35

buf.writeUInt8(value, offset[, noAssert])

Belirtilen uzaklıkta arabelleğe bir değer yazar. Değerin geçerli bir işaretsiz 8 bitlik tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

36

buf.writeUInt16LE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir işaretsiz 16 bit tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

37

buf.writeUInt16BE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir işaretsiz 16 bit tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

38

buf.writeUInt32LE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir işaretsiz 32 bit tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

39

buf.writeUInt32BE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir işaretsiz 32 bit tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

40

buf.writeInt8(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir işaretli 8 bitlik tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

41

buf.writeInt16LE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir işaretli 16 bit tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

42

buf.writeInt16BE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir işaretli 16 bit tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

43

buf.writeInt32LE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir işaretli 32 bit tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

44

buf.writeInt32BE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir işaretli 32 bit tam sayı olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

45

buf.writeFloatLE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin geçerli bir 32 bitlik kayan nokta olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

46

buf.writeFloatBE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Değerin 32 bitlik bir kayan nokta olması gerektiğini unutmayın. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

47

buf.writeDoubleLE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Not, değerin geçerli bir 64 bitlik çift olması gerekir. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, belirli işlev için değerin çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

48

buf.writeDoubleBE(value, offset[, noAssert])

Belirtilen endian biçimiyle belirtilen uzaklıktaki arabelleğe bir değer yazar. Not, değerin geçerli bir 64 bitlik çift olması gerekir. Değer ve uzaklık doğrulamasını atlamak için noAssert öğesini true olarak ayarlayın. Bu, değerin belirli bir işlev için çok büyük olabileceği ve ofsetin, değerlerin sessizce düşmesine yol açan tamponun sonunun ötesinde olabileceği anlamına gelir. Doğruluğundan emin olmadığınız sürece kullanılmamalıdır. Varsayılan olarak yanlıştır.

49

buf.fill(value[, offset][, end])

Tamponu belirtilen değerle doldurur. Uzaklık (varsayılan olarak 0'dır) ve son (varsayılan olarak buffer.length) belirtilmezse, tüm arabelleği doldurur.

Sınıf Yöntemleri

Sr.No. Yöntem ve Açıklama
1

Buffer.isEncoding(encoding)

Kodlama geçerli bir kodlama bağımsız değişkeni ise doğru, aksi takdirde yanlış döndürür.

2

Buffer.isBuffer(obj)

Obj'in Buffer olup olmadığını test eder.

3

Buffer.byteLength(string[, encoding])

Bir dizenin gerçek bayt uzunluğunu verir. kodlama varsayılan olarak "utf8" dir. String.prototype.length bir dizedeki karakter sayısını döndürdüğünden, String.prototype.length ile aynı değildir.

4

Buffer.concat(list[, totalLength])

Listedeki tüm arabellekleri bir araya getirmenin sonucu olan bir arabellek döndürür.

5

Buffer.compare(buf1, buf2)

Buf1.compare (buf2) ile aynıdır. Bir dizi arabellekleri sıralamak için kullanışlıdır.