function createUnsafeBuffer(size) {
zeroFill[0] = 0;
try {
//directly return new FastBuffer(size)
return new FastBuffer(size);
} finally {
zeroFill[0] = 1;
}
}
Buffer.alloc = function alloc(size, fill, encoding) {
assertSize(size);
if (fill !== undefined && fill !== 0 && size > 0) {
const buf = createUnsafeBuffer(size);
return _fill(buf, fill, 0, buf.length, encoding);
}
// return new FastBuffer(size) while fill is undefined or 0
return new FastBuffer(size);
};
FastBuffer расширяется от Uint8Array ,, и содержимое будет установлено на 0, пока создается экземпляр Uint8Array.
Тогда почему createUnsafeBuffer небезопасен, а FastBuffer безопасен?
Пожалуйста, помогите мне. Спасибо.