JavaScriptにおいて、文字列の長さを正確に計算することは、さまざまなアプリケーションで重要な役割を果たします。
特に、日本語などの全角文字と半角文字が混在する場合、これらを適切にカウントする必要があります。
この記事では、JavaScriptで全角文字を2文字、半角文字を1文字としてカウントする方法を紹介します。
全角文字を2文字、半角文字を1文字としてカウントする関数の実装
function countCharacters(str) {
let count = 0;
for (let i = 0; i < str.length; i++) {
const codePoint = str.codePointAt(i);
if (codePoint >= 0x10000 && codePoint <= 0x10FFFF) {
count += 2; // 全角文字
} else {
count += 1; // 半角文字
}
}
return count;
}
const text = "あいうえおABCDE";
console.log(countCharacters(text)); // 出力: 12
この関数は、文字列を一文字ずつ走査し、Unicodeコードポイントを取得して、その値に基づいて全角文字と半角文字を区別し、カウントします。最終的に、全角文字を2文字、半角文字を1文字として合計の文字数を返します。
まとめ
JavaScriptで全角文字を2文字、半角文字を1文字としてカウントする方法を学びました。この方法を使用することで、文字列の長さを正確に計算し、文字列操作をより効果的に行うことができます。