最近項目上常常要用到計算字符串的長度的問題,有時須要按照byte進行計算長度,因此我就想在頁面上用js實現,因而就到網上查了相關的資料,發現確實有不少的版本,這裏給出兩個比較好用的。測試
//方法一:逐個字符檢查是否中文字符 String.prototype.getByteLen = function() { var len = 0; for (var i=0; i<this.length; i++) { if ((this.charCodeAt(i) & 0xff00) != 0) len ++; len ++; } return len; } //方法二:使用正則替換全部中文字符,而後再計算 getBLen = function(str) { if (str == null) return 0; if (typeof str != "string"){ str += ""; } return str.replace(/[^\x00-\xff]/g,"ab").length; }
用法我就不說了,相信你確定會用,呵呵,下面給出測試示例:this
spa
參考出處:.net
http://www.jb51.net/article/48202.htmprototype
http://www.jb51.net/article/90289.htmcode