关闭

js正确截取单字节和双字节混和字符串的方法

标签: javascript
1069人阅读 评论(0) 收藏 举报
分类:
/**
 * description : 得到字符串的字节长度;
 * @version 0.2;
 * @return 返回字符串的字节长度(eg:"一二12"的字节长度是6);
 */
String.prototype.getLength=function(){
 var text=this.replace(/[^\x00-\xff]/g,"**");
 return text.length;
}

/**
* description : 按字节长度截取字符串,并添加后缀.
* @param len 需要截取的长度,字符串长度不足返回本身;
* @param alt 添加后缀(非必要),默认为”……”;
* @return 返回截取后的字符串;
* @requires getLength;
*/

String.prototype.getShortForm=function(len,alt){
 var tempStr=this;
 if(this.getLength()>len){
  if(!alt) {
   alt="......";
  }
  var i=0;
  for(var z=0;z<len;z++){
   if(tempStr.charCodeAt(z)>255){
    i=i+2;
   }else{
    i=i+1;
   }
   if(i>=len){
    tempStr=tempStr.slice(0,(z + 1))+alt;
    break;
   }
  }
  return tempStr;
 }else{
  return this+"";
 }
}

用例:

alert(“一二三四五”.getShortForm(8));

返回:”一二三……”

0
0
查看评论

用一个双字节变量表示两个单字节组成的双字节数据

想想应该有好几种方法, 当然了, 这两个单字节变量的地址得考虑是连续的还是不连续的和考虑大小端序问题. 对于地址不连续的情况:  unsigned char H_Byte, L_Byte; unsigned short Two_Bytes = (H_Byte << 8...
  • KISSMonX
  • KISSMonX
  • 2012-09-28 21:55
  • 2877

js通过字节长度截取中英文混合字符串

/** * 截取字符串 中英文混合 * @param str 待处理字符串 * @param len 截取字节长度 中文2字节 英文1字节 */ function subString1(str, len){ var regexp = /[^\x00-\xff]/g;// 正在表达式匹配中文...
  • li4562258fj155
  • li4562258fj155
  • 2017-08-11 13:15
  • 336

js截取前n个字节的字符串

使用js截取前len字节的字符串, str 要截取的字符穿 len要截取的长度,根据字节计算 suffix截取前len个后,其余的字符的替换字符一般用“…” function cutString(str,len,suffix){ if(!str) return "&q...
  • haoxinqing9698
  • haoxinqing9698
  • 2013-02-18 13:38
  • 3187

单字节和双字节的转换

CString 与 char* WCHAR之间的转换 char* 转 WCHAR可以如下转换: char szFormat[1024];  WCHAR* szForMat;   USES_CONVERSION;   CString...
  • preston2006
  • preston2006
  • 2013-03-08 11:37
  • 687

js byte[] 和string 相互转换 UTF-8

function stringToByte(str) { var bytes = new Array(); var len, c; len = str.length; for(var i = 0; i < len; i++) { c = str.charCode...
  • u013022210
  • u013022210
  • 2017-02-14 16:42
  • 9943

javasript处理字符串问题集

1带中文的字符串的长度问题http://nio.infor96.com/archives/182 在 JavaScript 编程中,经常需要对提交的表单进行验证,特别是对用户在文本框中输入的字符串的长度进行限制。通常我们都是使用字符串对象的 length 属性获取字符串长度,如:var len = ...
  • yethyeth
  • yethyeth
  • 2007-09-18 15:26
  • 1082

JS字符串转Byte[]

js里面的string转byte[],这里是微信小程序代码 stringToBytes : function ( str ) { var ch, st, re = []; for (var i = 0; i < str.length; i++ ) { ...
  • weixin_38608490
  • weixin_38608490
  • 2017-09-13 18:14
  • 1558

javascript获得变量的字节数

javascript中数组或者字符串的length只能表示数组或者字符的长度,不能
  • CCLOVETT
  • CCLOVETT
  • 2014-09-21 14:36
  • 2515

JavaScript十六进制字符串和字节数组相互转换

转自:http://blog.csdn.net/kandyer/article/details/8241894 //十六进制字符串转字节数组 function Str2Bytes(str) { var pos = 0; var len = str.length; ...
  • gf771115
  • gf771115
  • 2015-02-04 14:50
  • 8570

JavaScript判断输入值的byte长度

JavaScript判断输入值的byte长度
  • Adensky
  • Adensky
  • 2011-02-23 16:00
  • 3035
    个人资料
    • 访问:26279次
    • 积分:464
    • 等级:
    • 排名:千里之外
    • 原创:18篇
    • 转载:12篇
    • 译文:0篇
    • 评论:0条