📜  Node.js | Buffer.indexOf() 方法

📅  最后修改于: 2022-05-13 01:56:56.910000             🧑  作者: Mango

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