Javascript 当isDeep标志为true时,为什么lodash cloneBuffer函数使用buffer.slice?

Javascript 当isDeep标志为true时,为什么lodash cloneBuffer函数使用buffer.slice?,javascript,node.js,frontend,lodash,Javascript,Node.js,Frontend,Lodash,这里是loadsh: 函数cloneBuffer(缓冲区,isDeep){ if(isDeep){ 返回buffer.slice() } 常量长度=buffer.length const result=allocUnsafe?allocUnsafe(长度):新的buffer.constructor(长度) buffer.copy(结果) 返回结果 } 如我们所见,如果isDeep标志为true,cloneBuffer函数使用buffer.slice()复制缓冲区 但是根据Node.js切片的文

这里是loadsh:

函数cloneBuffer(缓冲区,isDeep){
if(isDeep){
返回buffer.slice()
}
常量长度=buffer.length
const result=allocUnsafe?allocUnsafe(长度):新的buffer.constructor(长度)
buffer.copy(结果)
返回结果
}
如我们所见,如果
isDeep
标志为
true
cloneBuffer
函数使用
buffer.slice()
复制缓冲区

但是根据Node.js切片的文档:

返回引用与原始缓冲区相同内存的新缓冲区

缓冲区和类型缓存
文档:

当TypedArray#slice()创建TypedArray部分的副本时,Buffer#slice()在现有缓冲区上创建一个视图而不进行复制

这清楚地表明,
Buffer.slice
只在现有缓冲区上创建一个视图,而不复制

那么为什么lodash使用它来执行cloneDeep操作呢