js獲取字串的位元組數

2021-10-06 02:57:12 字數 763 閱讀 2728

js是使用unicode編碼的。而unicode的實現有n種,其中用的最多的就是utf-8和utf-16。

utf-8(8-bit unicode transformation format)是一種針對unicode的可變長度字元編碼,可以表示unicode標準中的任何字元,且其編碼中的第乙個位元組仍與ascii相容,使用一至四個位元組為每個字元編碼。

其編碼規則如下

字元**在000000 – 00007f之間的,用乙個位元組編碼;

000080 – 0007ff之間的字元用兩個位元組

000800 – 00d7ff 和 00e000 – 00ffff之間的用三個位元組,注: unicode在範圍 d800-dfff中不存在任何字元

010000 – 10ffff之間的用4個位元組

string.prototype.

getbyteslength

=function()

elseif(

(0x0080

<= charcode)

&&(charcode <=

0x07ff))

elseif(

(0x0800

<= charcode)

&&(charcode <=

0xffff))

else

}return totallength

}

獲取字串的位元組數。

大家都知道,獲取字串的長度可用length來獲取,那麼獲取這段字串的位元組數呢?英文本母肯定lenght和位元組數都一樣 都是 而中文lenght 1,位元組數 2 因此,需要作的就是把中文字元的位元組數計算出來。方法一 alert a replace u0000 u00ff g,aaa lengt...

c 獲取字串的位元組數的方法

將字串轉換為ascii編碼陣列,只要是中文位元組碼就是ascii編碼63即 所以可以由此來進行判斷 複製 如下 class stringop return strlen class testmain 將字串以unicode的編碼轉換為位元組陣列,判斷每個字元的第二個位元組是否大於0,來計算字串的位元...

按位元組數擷取字串

1.字串設定長度,長度限制 nsstring stringwithhtml nsstring str length cgfloat length 如果有寬度限制的話,建議用 if str.length length 缺點是字母或數字或中文與數字字母混合時計算有誤,還會執行下面方法,但比較保險 獲取字...