<textarea id="myTextarea" oninput="checkBytes(this.value)"></textarea>
<p id="byteCount">0 bytes</p>
<script>
function checkBytes(str) {
// 将字符串转换为Blob对象以获取其字节大小
const blob = new Blob([str], { encoding: 'utf-8' });
// 使用FileReader读取Blob以获取其大小(字节)
const reader = new FileReader();
reader.onload = function(e) {
// 读取结果是一个ArrayBuffer,其byteLength属性即为字节大小
const bytes = e.target.result.byteLength;
document.getElementById('byteCount').textContent = bytes + ' bytes';
};
reader.readAsArrayBuffer(blob);
}
</script>
这段代码展示了如何在HTML的`
注意,这种方法在处理大型文本或频繁更新时可能不是最高效的,因为它每次都会创建一个新的Blob和FileReader对象。但在许多应用场景中,这种方法是简单且有效的。