ホームページ > ウェブフロントエンド > jsチュートリアル > js は文字列の長さを計算し、その文字列に含まれる中国語は utf8 形式で計算されます_javascript スキル

js は文字列の長さを計算し、その文字列に含まれる中国語は utf8 形式で計算されます_javascript スキル

WBOY
リリース: 2016-05-16 17:20:08
オリジナル
1220 人が閲覧しました

方法 1:

コードをコピー コードは次のとおりです。

function byteLength(str) {
var byteLen = 0, len = str.length;
if( !str ) return 0;
for( var i=0; i byteLen = str.charCodeAt(i) > ; 255 ? 2 : 1;
return byteLen;
}

説明: byteLength(str)
パラメータ:
string str: バイト長を計算する文字列 (非 ASCII 文字は 2 バイトとしてカウントされます)

方法 2:

JS は文字列の実際の長さを取得します。

今日はまたちょっとしたことが追加されました!中国語と英語の JS の元の長さは 1 文字と同じであるため、プログラマーがよく使用する文字列長検出方法。したがって、ここでは文字列の実際の長さを判断して取得する必要があります。

コードをコピーします コードは次のとおりです。

function GetLength(str) {
/// 文字列の実際の長さを取得します、中国語 2、英語 1
///文字列の長さを取得するには var realLength = 0, len = str.length, charCode = -1;
for (var i = 0; i charCode = str.charCodeAt(i);
if ( charCode >= 0 && charCode else realLength = 2;
}
return realLength;
};
実行コード:

alert(GetLength('Test test ceshiceshi));

方法 3: テストはまだ合格していません



function getByteLen(val) {
var len = 0
for (var i = 0; i < ; val.length; i ) {
if (val[i].match(/[u4e00-u9fa5 ]/ig) != null)
else
len = 1 ;
}
return
}



方法 4:

GBK長さ計算関数:

コードをコピー コードは次のとおりです:// GBK 文字セットの実際の長さの計算
関数 getStrLeng(str){
var realLength = 0;
var charCode = -1;
for(var i = 0; i < len; i ){
charCode = str.charCodeAt(i);
if (charCode >= 0 && charCode }else{
/ / if 中国語の場合、長さに 2 を加えます
realLength = 2; }
}
return realLength;
UTF8の長さ計算関数:





コードをコピー
コードは次のとおりです:

// UTF8 文字セットの実際の長さの計算

関数 getStrLeng(str){ var realLength = 0; var charCode = -1; for(var i = 0; i < len; i ){ charCode = str.charCodeAt(i); if (charCode >= 0 && charCode }else{
/ / if 中国語の場合、長さに 3 を加算します。
realLength = 3; }
}
return realLength;
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート