検索
ホームページWeChat アプレットミニプログラム開発WeChat ミニプログラムバッファの分析

WeChat ミニプログラムバッファの分析

Jun 27, 2018 pm 03:12 PM
bufferアプレットWeChat アプレット

この記事は主に、WeChat アプレットのバッファ バッファの詳細な説明に関する関連情報を紹介します。必要な友人は参照してください

WeChat アプレットのバッファ バッファの詳細な説明

JavaScript 言語自体には、文字列データ型であり、バイナリ型のデータはありません。

ただし、TCP やファイル ストリームなどのストリームを処理する場合は、バイナリ データを使用する必要があります。そのため、Node.js では、バイナリ データを格納するための専用のバッファ領域を作成するために使用される Buffer クラスが定義されています。

node.js では、Buffer クラスは Node カーネルとともにリリースされるコア ライブラリです。バッファ ライブラリは、生データを Node.js に保存する方法を提供し、Node.js での I/O 操作中に移動されたデータを処理する必要があるときはいつでも、Node.js でバッファ ライブラリを使用できるようにします。 。生データは Buffer クラスのインスタンスに保存されます。バッファは整数配列に似ていますが、V8 ヒープ メモリの外側にある生のメモリの一部に対応します。

バッファの作成

1.长度为10的实例
var buf = new Buffer(10)
2.通过给定的数组创建
var buf = new Buffer([10,20,30,40,50])
3.通过字符串创建
var buf = new Buffer("www.csdn.net","utf-8")
utf-8 是默认的编码方式
支持以下编码:"ascii", "utf8", "utf16le", "ucs2", "base64" 和 "hex"。

Writebuffer.write()

var buf = new Buffer(200)
var len = buf.write("www.csdn.net")
console.log("写入字节数:" + len)

  • string - バッファに書き込まれる文字列。

  • offset - バッファへの書き込みが開始されるインデックス値、デフォルトは 0 です。

  • length - 書き込まれたバイト数、デフォルトはbuffer.length

  • encoding - 使用されるエンコーディング。デフォルトは 'utf8' です。

キャッシュ read.toString()

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

console.log( buf.toString(&#39;ascii&#39;));    // 输出: abcdefghijklmnopqrstuvwxyz
console.log( buf.toString(&#39;ascii&#39;,0,5));  // 输出: abcde
console.log( buf.toString(&#39;utf8&#39;,0,5));  // 输出: abcde
console.log( buf.toString(undefined,0,5)); // 使用 &#39;utf8&#39; 编码, 并输出: abcde

  1. encoding - 使用されるエンコーディング。デフォルトは 'utf8' です。

  2. start - 読み取りを開始するインデックス位置を指定します。デフォルトは 0 です。

  3. end - 終了位置、デフォルトはバッファーの最後です。 JBuffer を JSON

R

var buf = new Buffer(&#39;www.runoob.com&#39;);
var json = buf.toJSON(buf);
console.log(json);
E

に結合したbuffer.concat ([])

var buf = new Buffer("北京")
var buf1 = new Buffer("上海")
var buf2 = Buffer.concat([buf,buf1],12)
console.log(buf2.toString())

listを結合して、Bufferオブジェクトの配列リストを結合しました。

  • totalLength は、マージされた Buffer オブジェクトの合計の長さを指定します。


  • Compare.compare(otherBuffer)

Node.js v0.12.2バージョンで導入されました

var buffer1 = new Buffer("AVCX")
var buffer2 = new Buffer("ACVV")

var result = buffer1.compare(buffer2)

if(result < 0) {
  console.log(buffer1 + " 在 " + buffer2 + "之前");
}else if(result == 0){
  console.log(buffer1 + " 与 " + buffer2 + "相同");
}else {
  console.log(buffer1 + " 在 " + buffer2 + "之后");
}

Copy.compare(buffer2)

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

ターゲットバッファ -コピーされる Buffer オブジェクト。

  1. targetStart -number、optional、default:0

  2. sourcestart -number、optional、default:0

  3. sourceend-番号、オプション、デフォルト:buffer.length


  4. rreee

.slice (buffer2) を調整する

var buf1 = new Buffer("beiJing")
var buf2 = new Buffer(8)
buf1.copy(buf2)
console.log("buf2 content:"+buf2.toString())

start -number、オプション、デフォルト: 0

  1. end -number、オプション、デフォルト:buffer.length

  2. 戻り値

古いバッファと同じメモリを指す新しいバッファを返しますが、インデックスの先頭から末尾までが切り取られています。

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


Length .length

var buf1 = new Buffer("beiJing")
var buf2 = buf1.slice(0,8)
console.log("buf2 content:"+buf2)
// beiJing

//このバッファのバイト数を返します。これは必ずしもバッファの内容のサイズではないことに注意してください。 length はバッファ オブジェクトによって割り当てられるメモリの量であり、バッファ オブジェクトの内容が変化しても変化しません。

以上がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

WeChat アプレットの動的パラメータの受け渡しについて

WeChat アプレットの非同期処理について

WeChat アプレット開発におけるデータ ストレージ、パラメータの受け渡し、データ キャッシュの概要


以上がWeChat ミニプログラムバッファの分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター