JS获取字符串实际长度(包含汉字)的简单方法
(编辑:jimmy 日期: 2024/11/20 浏览:3 次 )
方法一:
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获取字符串实际长度(包含汉字)的简单方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
下一篇:JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)