Node.js Buffer学以致用
学习要点:
写入缓冲区
从缓冲区读取数据
把 Buffer 转换为 JSON 对象
合并缓冲区
拷贝缓冲区
缓冲区裁剪
缓冲区长度
Node.js Buffer(缓冲器)
该类用来创建一个专门存放二进制数据的缓存区
创建 Buffer 类
创建长度为 10 字节的 Buffer 实例
[code]var buffer = new Buffer(10);
通过给定的数组创建 Buffer 实例
[code]var buffer = new Buffer([10, 20, 30, 40]);
[code]var buffer = new Buffer('光明大神棍的博客', 'utf-8');
[code]buffer.write(string[, offset, length, encoding]) 参数 string 必填 要输入缓冲区的字符串 offset 可选 缓冲区开始写入的索引值,默认为 0 length 可选 写入的字节数,默认为 buffer.length encoding 可选 使用的编码。默认为 'utf8' 返回值: 实际写入的大小。如果 buffer 空间不足, 则只会写入部分字符串
[code]var buffer = new Buffer(100); var len = buffer.write('http://www.lamport.me/club'); console.log('事件输入的字符:' + len);
从缓冲区读取数据
[code]buffer.toString([ending, start, end]) 参数 encoding - 使用的编码。默认为 'utf8' 。 start - 指定开始读取的索引位置,默认为 0。 end - 结束位置,默认为缓冲区的末尾。 返回值 解码缓冲区数据并以指定编码返回字符串
案例:buffer2.js
[code]var buffer = new Buffer(26); for (var i = 0; i < 26; i++) { buffer[i] = i + 97; } console.log(buffer.toString('ascii')); console.log(buffer.toString('ascii', 0, 4)); console.log(buffer.toString('utf8', 0, 4)); console.log(buffer.toString(undefined, 0, 4));
把 Buffer 转换为 JSON 对象
toJSON(buffer)
案例:buffer3.js
[code]var buffer = new Buffer('http://www.lamport.me/club'); var data =buffer.toJSON(buffer); console.log(data);
合并缓冲区
[code]Buffer.concat(list[, totalLength]) 参数 list - 用于合并的 Buffer 对象数组列表。 totalLength - 指定合并后Buffer对象的总长度。
案例:buffer4.js
[code]var bf1 = new Buffer("Hello "); var bf2 = new Buffer("World"); var bf3 = Buffer.concat([bf1, bf2]); console.log(bf3.toString());
拷贝缓冲区
[code]buf.copy(targetBuffer[, targetStart[, sourceStart[, sourceEnd]]]) 参数 targetBuffer - 要拷贝的 Buffer 对象。 targetStart - 数字, 可选, 默认: 0 sourceStart - 数字, 可选, 默认: 0 sourceEnd - 数字, 可选, 默认: buffer.length 返回值 没有返回值。
案例:buffer5.js
[code]var buffer1 = new Buffer('ABC'); var buffer2 = new Buffer(3); buffer1.copy(buffer2); console.log(buffer2.toString());
缓冲区裁剪
[code]buf.slice([start[, end]]) 参数 start - 数字, 可选, 默认: 0 end - 数字, 可选, 默认: buffer.length 返回值 返回一个新的缓冲区,它和旧缓冲区指向同一块内存,但是从索引 start 到 end 的位置剪切。
[code]var buffer = new Buffer("ABCD"); var buffer2 = buffer.slice(0, 2); console.log(buffer2.toString());
缓冲区长度
[code]buf.length; 返回值 返回 Buffer 对象所占据的内存长度。
实例:buffer7.js
[code]var buffer = new Buffer("abcd"); console.log(buffer.length);
以上就是Node.js Buffer学以致用的内容,更多相关内容请关注PHP中文网(www.php.cn)!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Artikel ini akan memberi anda pemahaman yang mendalam tentang memori dan pengumpul sampah (GC) enjin NodeJS V8 saya harap ia akan membantu anda!

Perkhidmatan Node yang dibina berdasarkan bukan sekatan dan dipacu peristiwa mempunyai kelebihan penggunaan memori yang rendah dan sangat sesuai untuk mengendalikan permintaan rangkaian besar-besaran. Di bawah premis permintaan besar-besaran, isu yang berkaitan dengan "kawalan memori" perlu dipertimbangkan. 1. Mekanisme kutipan sampah V8 dan had ingatan Js dikawal oleh mesin kutipan sampah

Memilih imej Docker untuk Node mungkin kelihatan seperti perkara remeh, tetapi saiz dan potensi kelemahan imej itu boleh memberi kesan yang ketara pada proses dan keselamatan CI/CD anda. Jadi bagaimana kita memilih imej Node.js Docker yang terbaik?

Modul fail ialah enkapsulasi operasi fail asas, seperti membaca/menulis/membuka/menutup/memadam fail, dsb. Ciri terbesar modul fail ialah semua kaedah menyediakan dua versi **segerak** dan ** asynchronous**, dengan Kaedah dengan akhiran penyegerakan adalah semua kaedah penyegerakan, dan kaedah yang tidak semuanya adalah kaedah heterogen.

Node 19 telah dikeluarkan secara rasmi Artikel ini akan memberi anda penjelasan terperinci tentang 6 ciri utama Node.js 19. Saya harap ia akan membantu anda!

Bagaimanakah Node.js melakukan GC (pengumpulan sampah)? Artikel berikut akan membawa anda melaluinya.

Gelung peristiwa ialah bahagian asas Node.js dan mendayakan pengaturcaraan tak segerak dengan memastikan bahawa utas utama tidak disekat Memahami gelung peristiwa adalah penting untuk membina aplikasi yang cekap. Artikel berikut akan memberi anda pemahaman yang mendalam tentang gelung acara dalam Node.

Sebab mengapa nod tidak boleh menggunakan arahan npm adalah kerana pembolehubah persekitaran tidak dikonfigurasikan dengan betul Penyelesaiannya ialah: 1. Buka "Sistem Sifat"; 2. Cari "Pembolehubah Persekitaran" -> "Pembolehubah Sistem", dan kemudian edit persekitaran. pembolehubah; 3. Cari lokasi folder nodejs;
