方法一:
var jmz = {}; jmz.GetLength = function(str) { ///<summary>獲得字符串實際長度,中文2,英文1</summary> ///<param name="str">要獲得長度的字符串</param> var realLength = 0, len = str.length, charCode = -1; for (var i = 0; i < len; i++) { charCode = str.charCodeAt(i); if (charCode >= 0 && charCode <= 128) realLength += 1; else realLength += 2; } return realLength; }; alert(jmz.GetLength('測試測試ceshiceshi));
方法二(更簡潔的方法):
var l = str.length; var blen = 0; for(i=0; i<l; i++) { if ((str.charCodeAt(i) & 0xff00) != 0) { blen ++; } blen ++; }
方法三(更更簡潔的方法):
var jmz = {}; jmz.GetLength = function(str) { return str.replace(/[\u0391-\uFFE5]/g,"aa").length; //先把中文替換成兩個字節的英文,在計算長度 }; alert(jmz.GetLength('測試測試ceshiceshi'));
以上這篇JS獲取字符串實際長度(包含漢字)的簡單方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持。