function isValidUTF8(data: Uint8Array): boolean {
try {
const decoded: string = new TextDecoder('utf-8', { fatal: true }).decode(data);
return true;
} catch {
return false;
}
}
const arr1: Uint8Array = new TextEncoder().encode("Hello, 世界");
const arr2: Uint8Array = new Uint8Array([0xa3, 0xed, 0xfd]);
console.log(isValidUTF8(arr1) ? "true" : "false");
console.log(isValidUTF8(arr2) ? "true" : "false");
/*
run:
"true"
"false"
*/