富贵资源网 Design By www.hznty.com

由于javascript是unicode编码的,所有的字符对于它来说一个就是一个,但是后台程序不是,通常在后台程序中一个中文是占两个字节的,这就导致了前后端校验长度不一致,这个问题可以通过正则来解决。
复制代码 代码如下:
function getRealLen( str ) {
    return str.replace(/[^\x00-\xff]/g, '__').length; //这个把所有双字节的都给匹配进去了
}
附赠另一小则技巧:

有时候为了美观,不影响布局和界面,会以一些文案进行截字,但是中文的宽度和英文的宽度不一样,如果按照英文标准来截中文的,或者按中文标准截英文的,显然会忽长忽短,特别是昵称这类容易既有中文又有英文的东西,同样我们可以用上面的思路
复制代码 代码如下:
function beautySub( str, len) {
       var reg = /[\u4e00-\u9fa5]/g,    //专业匹配中文
           slice = str.substring(0,len),
           realen = len - ( ~~( slice.match(reg) && slice.match(reg).length ) );
           return slice.substring(0, realen ? realen : 1);
}
这里我们认为一个中文字符是两个英文字符的宽度,如果你是完美主义者,应该想到j和w,m的宽度是不一样的,w和m以及大写的部分字母和中文的宽度是一致的,这个函数的正则还有相当大的改进空间,同时也可以指定截字的起始位置。

富贵资源网 Design By www.hznty.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
富贵资源网 Design By www.hznty.com

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。