方式1: encodeURIComponent
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>获取字符串的字节数</title>
</head>
<body>
</body>
<script>
function getStrByteLength(str) {
if (!str) {
return 0;
}
return encodeURIComponent(str).replace(/%../g, "x").length;
}
console.log(getStrByteLength("我叫123"));
console.log(getStrByteLength("ABC123"));
console.log(getStrByteLength("コンバージョン"));
</script>
</html>
方式2: Blob
function StrByteSize(str) {
if (!str) {
return 0;
}
return new Blob([str]).size;
}
const str1 = "我叫123";
const str2 = "ABC123";
const str3 = "コンバージョン";
console.log(StrByteSize(str1));
console.log(StrByteSize(str2));
console.log(StrByteSize(str3));