js截取固定长度的中英文字符的简单实例


Posted in Javascript onNovember 22, 2013

js虽然提供了计算字符串所占字节数的函数,但是却不能正确计算汉字所占的字节数,如document.form1.username.value=“我是中国人”,document.form1.username.value.length返回的是5而不是10,于是给编程时带来一些麻烦,如限制固定长度字符的输入,截取固定长度的字符串都因为这个问题达不到预想的效果,下面是自己写的一个简单的函数,用于截取固定长度的字符串,中英文都适用.若有不妥之处还请高手指正!

//js截取字符串,中英文都能用
//如果给定的字符串大于指定长度,截取指定长度返回,否者返回源字符串。
function cutstr(str,len)
{
   var str_length = 0;
   var str_len = 0;
      str_cut = new String();
      str_len = str.length;
      for(var i = 0;i<str_len;i++)
     {
        a = str.charAt(i);
        str_length++;
        if(escape(a).length > 4)
        {
         //中文字符的长度经编码之后大于4
         str_length++;
         }
         str_cut = str_cut.concat(a);
         if(str_length>=len)
         {
         str_cut = str_cut.concat("...");
         return str_cut;
         }
    }
    //如果给定字符串小于指定长度,则返回源字符串;
    if(str_length<len){
     return  str;
    }
}
Javascript 相关文章推荐
showModalDialog 和 showModelessDialog
Jan 22 Javascript
不要在cookie中使用特殊字符的原因分析
Jul 13 Javascript
Javascript实现视频轮播在pc端与移动端均可
Sep 29 Javascript
javascript获取xml节点的最大值(实现代码)
Dec 11 Javascript
从零学JS之你需要了解的几本书
May 19 Javascript
avascript中的自执行匿名函数应用示例
Sep 15 Javascript
使用Jasmine和Karma对AngularJS页面程序进行测试
Mar 05 Javascript
Boostrap入门准备之border box
May 09 Javascript
jQuery动态增减行的实例代码解析(推荐)
Dec 05 Javascript
原生javascript实现的全屏滚动功能示例
Sep 19 Javascript
详解VueJs中的V-bind指令
May 03 Javascript
javscript 数组扁平化的实现
Feb 03 Javascript
String.prototype实现的一些javascript函数介绍
Nov 22 #Javascript
nodeType属性返回被选节点的节点类型介绍
Nov 22 #Javascript
在Iframe中获取父窗口中表单的值(示例代码)
Nov 22 #Javascript
解析URI与URL之间的区别与联系
Nov 22 #Javascript
一个简单的JS时间控件示例代码(JS时分秒时间控件)
Nov 22 #Javascript
jQuery读取和设定KindEditor值的方法
Nov 22 #Javascript
实现51Map地图接口(示例代码)
Nov 22 #Javascript
You might like
php中将指针移动到数据集初始位置的实现代码[mysql_data_seek]
2012/11/01 PHP
PHP更新购物车数量(表单部分/PHP处理部分)
2013/05/03 PHP
ubuntu10.04配置 nginx+php-fpm模式的详解
2013/06/03 PHP
基于PHP输出缓存(output_buffering)的深入理解
2013/06/13 PHP
php过滤表单提交的html等危险代码
2014/11/03 PHP
joomla数据库操作示例代码
2016/01/06 PHP
php 使用curl模拟ip和来源进行访问的实现方法
2017/05/02 PHP
PHP框架自动加载类文件原理详解
2017/06/06 PHP
PHP从零开始打造自己的MVC框架之路由类实现方法分析
2019/06/03 PHP
JavaScript中的new的使用方法与注意事项
2007/05/16 Javascript
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
2009/07/06 Javascript
javascript 动态调整图片尺寸实现代码
2009/12/28 Javascript
jQuery数组处理代码详解(含实例演示)
2012/02/03 Javascript
解决js中window.open弹出的是上次的缓存页面问题
2013/12/29 Javascript
详解JavaScript中Date.UTC()方法的使用
2015/06/12 Javascript
Node.js中如何合并两个复杂对象详解
2016/12/31 Javascript
用Object.prototype.toString.call(obj)检测对象类型原因分析
2018/10/11 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
2019/12/02 Javascript
使用原生JS实现滚轮翻页效果的示例代码
2020/05/31 Javascript
如何在postman测试用例中实现断言过程解析
2020/07/09 Javascript
python:接口间数据传递与调用方法
2018/12/17 Python
Python中字符串与编码示例代码
2019/05/20 Python
python tkinter组件使用详解
2019/09/16 Python
解决Django no such table: django_session的问题
2020/04/07 Python
pycharm软件实现设置自动保存操作
2020/06/08 Python
C#中有没有运算符重载?能否使用指针?
2014/05/05 面试题
韩语专业本科生求职信
2013/10/01 职场文书
2014社区三八妇女节活动总结
2014/03/01 职场文书
学校招生宣传广告词
2014/03/19 职场文书
党员领导干部承诺书
2014/05/28 职场文书
社区党建工作汇报材料
2014/10/27 职场文书
不尊敬老师的检讨书
2014/12/21 职场文书
幼师小班个人总结
2015/02/12 职场文书
《小小的船》教学反思
2016/02/18 职场文书
创业计划书之废品回收
2019/09/26 职场文书
win10如何更改appdata文件夹的默认位置?
2022/07/15 数码科技