`

js截取固定长度的中英文字符

阅读更多

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;
    }
}

 

 

 

如cutstr("我是中国人",6);返回的将是:我是中...

分享到:
评论

相关推荐

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

    标题提到的"js截取固定长度的中英文字符的简单实例",实际上就是提供了一个这样的解决方案。这个实例中的函数`cutstr`实现了以下功能: 1. **计算字符串的实际长度**:通过遍历字符串的每个字符,使用`charAt()`...

    JavaScript截取中文字符串

    ### JavaScript截取中文字符串知识点详解 #### 一、引言 在进行文本处理时,我们经常需要对字符串进行截取操作。特别是在处理包含多种字符集(如英文与中文)的字符串时,考虑到不同字符编码长度的差异性,简单地...

    C#区分中英文按照指定长度截取字符串的方法

    本文实例讲述了C#区分中英文按照指定长度截取字符串的.../// 截取文本,区分中英文字符,中文算两个长度,英文算一个长度 /// /// 待截取的字符串 /// 需计算长度的字符串 /// &lt;returns&gt;string public static string G

    javascript截取字符串(通过substring实现并支持中英文混合)

    示例函数sub()使用正则表达式来处理中英文混合字符串,通过比较替换后的字符串长度来判断截取长度是否正确。 示例代码如下: ```javascript &lt;script type="text/javascript"&gt; var sub = function(str, n) { var r...

    js中英文混合的字符串换行

    //不分中英文按字符串长度循环每个字符截取换行 这个是隔10个字符换行一次 String psStr="asdfghjklzxcvbnmzxcvbnmsdfghaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbb"; String aa=""; String bb=""; for (int i...

    js控制输入中英文字符数

    在JavaScript编程中,控制输入中英文字符数是一项常见的需求,特别是在网页表单或者文本输入框中。这样的功能有助于保持用户输入的数据格式规范,防止输入过长的文本导致数据处理问题。下面我们将详细讨论如何实现这...

    JS字符串长度判断,超出进行自动截取的实例(支持中文)

    1. 字符串长度计算:在JavaScript中,一个中文字符通常由三个字节组成,而英文字符只有一个字节。因此,需要一个函数来计算字符串的实际长度。这里的GetLength函数就扮演了这个角色,它通过遍历字符串中的每一个字符...

    JS按字节截取字符长度实例

    在JavaScript中,处理字符串长度有时会遇到特殊的情况,特别是涉及到中英文混合的字符串。中文字符占用的字节数是英文字符的两倍,这在计算显示长度时需要特别注意。本实例提供了一种方法,用于根据字节长度来截取...

    JS版获取字符串真实长度和取固定长度的字符串函数

    在JavaScript中,处理字符串长度和截取固定长度的字符串是一项常见的任务,特别是在处理包含多字节字符(如中文、日文、韩文等)的文本时。这些字符在JavaScript的字符串长度计算中可能会造成混淆,因为一个双字节...

    js截取中英文字符串、标点符号无乱码示例解读

    文章标题《js截取中英文字符串、标点符号无乱码示例解读》和描述《主要介绍了如何js截取中英文字符串、标点符号无乱码,需要的朋友可以参考下》为我们提供了关键信息:这篇文章将向我们展示如何使用JavaScript(简称...

    Js自动截取字符串长度,添加省略号(……)的实现方法

    在处理中文字符时,需要注意的是,一个中文字符在JavaScript中占用两个字节,而英文字符则只占用一个字节。因此,我们在截取字符串时必须考虑字符编码的影响。 以下是一个实现自动截取字符串长度并添加省略号的函数...

    js字符限制(字符截取) 一个中文汉字算两个字符

    在JavaScript编程中,一个中文汉字往往被视为两个字节(byte),而英文字符则通常只占用一个字节。 根据给定文件内容,我们可以了解到有关js字符限制和字符截取方面的相关知识点。从文件中的核心js代码可以看出,...

    限制 输入框字符长度 适用于中英文

    在这两个方法中,`truelen`函数是用来计算字符串真实长度的,因为它考虑到中文字符占用两个字节,而英文字符占用一个字节。该函数遍历字符串中的每个字符,通过`charCodeAt`方法获取字符的Unicode编码,如果大于255...

    字符串截取

    例如,在 UTF-8 编码下,英文字符通常占用 1 字节,而中文字符则占用 3 字节。 - **字符串编码**:用于表示文本的计算机编码格式,常见的有 ASCII、UTF-8、GBK 等。 - **jQuery**:一种常用的 JavaScript 库,可以...

    JS判断字符串字节数并截取长度的方法

    代码中使用了`onpropertychange`事件,它是当元素的属性发生变化时触发的事件,此事件在文本框值改变时被触发,进而调用`notifyTextLength`函数来动态检测和截取长度。这使得文本框对用户的输入实时响应,提高用户...

    JS实现含有中文字符串的友好截取功能分析

    中文字符一般占用2个字节,而英文字符占用1个字节,这就导致了中英文字符在长度上的不一致。 在没有特殊处理的情况下,如果要截取的字符串长度设定为5,使用`substr`方法截取英文字符串"***"时,结果是"12345",而...

    JS实现中英文混合文字溢出友好截取功能

    6. 总结:通过上述方法和示例,我们可以看到,在JavaScript中实现中英文混合文本溢出友好截取功能时,需要考虑到中英文字符在空间占用上的差异,利用合适的字符串处理方法和正则表达式技术,封装一个功能强大的字符...

Global site tag (gtag.js) - Google Analytics