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