📅  最后修改于: 2023-12-03 15:03:14.897000             🧑  作者: Mango
Buffer.indexOf()
方法用于在 Buffer
中搜索指定 value
的索引位置,如果找到了,则返回第一个匹配项的索引位置。如果没找到,则返回 -1
。
以下是 Buffer.indexOf()
方法的语法:
buffer.indexOf(value[, byteOffset][, encoding])
参数说明:
value
:要查找的值,可以是 Buffer
对象、string
或 integer
。byteOffset
:开始搜索的位置,默认是 0
。encoding
:如果 value
是 string
,则指定该参数。如果找到了,则返回第一个匹配项的索引位置。如果没找到,则返回 -1
。
以下是一个简单的 Buffer
查找示例:
const buf = Buffer.from('Hello World');
// 从默认位置开始搜索
console.log(buf.indexOf('World')); // 输出 6
// 指定从第 3 个字节开始搜索
console.log(buf.indexOf('World', 3)); // 输出 6
// 指定从第 8 个字节开始搜索
console.log(buf.indexOf('World', 8)); // 输出 -1
encoding
被指定,则 value
必须是 string
类型。byteOffset
参数默认不会改变;如果没找到,则返回 -1
。byteOffset
参数超出了 Buffer
的长度,则返回 -1
。byteOffset
参数小于 0
,则会从 Buffer
的末尾开始搜索。