Node.js | Buffer.indexOf() 方法
缓冲区是一种临时存储器,用于在数据从一个地方移动到另一个地方时存储数据。它就像整数数组。
Buffer.indexOf() 方法首先检查输入值,如果它存在于缓冲区中,则返回值开始的第一个位置(索引)。
句法:
buffer.indexOf( value, start, encoding )
参数:此方法接受上面提到和下面描述的三个参数:
- 值:此参数保存要在缓冲区中查找的值。
- start:它是一个可选参数。它指的是将搜索输入缓冲区元素的起始索引。默认值为 0。
- 编码:它是一个可选参数。如果需要的值为字符串,则可以添加编码类型。默认值为 utf-8。
返回值:搜索值开始的索引。如果缓冲区中不存在该值,则返回-1 。
下面的例子说明了 Node.js 中Buffer.indexOf() 方法的使用:
示例 1:
// Node.js program to demonstrate the
// Buffer.indexOf() method
// Creating a buffer
const buffer = Buffer.from(
'GeeksforGeeks: A computer science portal');
const output = buffer.indexOf('computer');
console.log(output);
输出:
17
示例 2:
// Node.js program to demonstrate the
// Buffer.indexOf() method
const buffer = Buffer.from('geeks community');
const output = buffer.indexOf(101);
// Print: 1 as 101 is the ASCII value of 'e'
// and 'e' occurs first at index 1
const output1 = buffer.indexOf('geeks community');
// Print: 0 as the whole value starts from 0 index only
const output2 = buffer.indexOf('geeks', 6);
// Print: -1 as we are starting the search from
// 6 index but 'geek' is not present before it
console.log(output);
console.log(output1);
console.log(output2);
输出:
1
0
-1
注意:上述程序将使用node index.js
命令进行编译和运行。
参考: https : //nodejs.org/api/buffer.html#buffer_buf_indexof_value_byteoffset_encoding