文字列の長さを取得する Javascript メソッド: 1. length 属性を使用して、文字列の長さを文字単位で取得します (構文は "string.length" です); 2. charCodeAt() を使用して、バイト単位の文字列の長さ。
このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。
js 文字列の長さを文字で決定する
length 属性は文字列の長さを読み取ることができます。長さは文字単位であり、このプロパティは読み取り専用です。
サンプル コード:
<script> var str = 'hello word!'; console.log(str.length); var str2 = '你好,世界!你好,中国!'; console.log(str2.length); </script>
出力結果:
11 12
注:
1. 長さを取得するには、length 属性を使用します。スペースや句読点を含む各文字1 文字
#2. length 属性では、中国語の文字もデフォルトで 1 文字に設定されます
js は文字列の長さをバイト数で決定します
JavaScript でサポートされるバイトには、半角タイプと全角タイプが含まれます。一般に、英語と英語の記号は 1 文字を占め、中国語の文字と中国語の記号は 2 文字を占めます。
例 1:
charCodeAt(): このメソッドは、次の文字の Unicode エンコードを返します。指定された位置。その値は 0 ~ 65535 の整数です。
<script> var str = '电影:我和我的祖国'; var len = 0; for (var i = 0; i < str.length; i++) { if (str.charCodeAt(i) > 127 || str.charCodeAt(i) == 94) { len += 2; } else { len++; } } console.log(len); </script>
出力結果:
18
例 2:
漢字は 2 文字、中国語記号は 2 文字です。
<script> var str = '你好,世界!'; var len = 0; for (var i = 0; i < str.length; i++) { var c = str.charCodeAt(i); //单字节加1 if ((c >= 0x0001 && c <= 0x007e) || (0xff60 <= c && c <= 0xff9f)) { len++; } else { len += 2; } } console.log(len); </script>
出力結果:12
例3:
全角文字を半角2文字に置換し、その文字を取得します。 Number
<script> var str = '飞鸟慕鱼博客'; var len = str.replace(/[^\x00-\xff]/g, "00").length; console.log(len); </script>
実行結果: 12
例 4:
<script> var str = '中华人民共和国'; var len = 0; for (var i = 0; i < str.length; i++) { var c = str.charAt(i); if (escape(c).length > 4) { len += 2; } else if (c != "\r") { len++; } } console.log(len); </script>
実行結果: 14
例 5:
次のことができます。正規表現を使用して文字が 2 バイトかどうかを判断する
<script> var str = '这里使用的正规表达式'; var len = 0; for (var i = 0; i < str.length; i++) { var a = str.charAt(i); //使用的正则表达式 if (a.match(/[^\x00-\xff]/ig) != null) { len += 2; } else { len += 1; } } console.log(len); </script> //20
[関連する推奨事項: JavaScript 学習チュートリアル]
以上がJavaScriptで文字列の長さを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。