JavaScriptで文字列の長さを取得する方法

青灯夜游
リリース: 2023-01-07 11:41:18
オリジナル
43063 人が閲覧しました

文字列の長さを取得する Javascript メソッド: 1. length 属性を使用して、文字列の長さを文字単位で取得します (構文は "string.length" です); 2. charCodeAt() を使用して、バイト単位の文字列の長さ。

JavaScriptで文字列の長さを取得する方法

このチュートリアルの動作環境: Windows7 システム、JavaScript バージョン 1.8.5、Dell G3 コンピューター。

js 文字列の長さを文字で決定する

length 属性は文字列の長さを読み取ることができます。長さは文字単位であり、このプロパティは読み取り専用です。
サンプル コード:

<script>
    var str = &#39;hello word!&#39;;
    console.log(str.length);
    var str2 = &#39;你好,世界!你好,中国!&#39;;
    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 = &#39;电影:我和我的祖国&#39;;
    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 = &#39;你好,世界!&#39;;
    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 = &#39;飞鸟慕鱼博客&#39;;
    var len = str.replace(/[^\x00-\xff]/g, "00").length; 
    console.log(len);
</script>
ログイン後にコピー

実行結果: 12

例 4:

<script>
    var str = &#39;中华人民共和国&#39;;
    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 = &#39;这里使用的正规表达式&#39;;
    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 サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート