js截取固定長度的中英文字符的簡(jiǎn)單實(shí)例
更新時(shí)間:2013年11月22日 09:44:14 作者:
下面是自己寫的一個(gè)簡(jiǎn)單的函數(shù),用于截取固定長度的字符串,中英文都適用.若有不妥之處還請(qǐng)高手指正
js雖然提供了計(jì)算字符串所占字節(jié)數(shù)的函數(shù),但是卻不能正確計(jì)算漢字所占的字節(jié)數(shù),如document.form1.username.value=“我是中國人”,document.form1.username.value.length返回的是5而不是10,于是給編程時(shí)帶來一些麻煩,如限制固定長度字符的輸入,截取固定長度的字符串都因?yàn)檫@個(gè)問題達(dá)不到預(yù)想的效果,下面是自己寫的一個(gè)簡(jiǎn)單的函數(shù),用于截取固定長度的字符串,中英文都適用.若有不妥之處還請(qǐng)高手指正!
//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)
{
//中文字符的長度經(jīng)編碼之后大于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;
}
}
復(fù)制代碼 代碼如下:
//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)
{
//中文字符的長度經(jīng)編碼之后大于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;
}
}
您可能感興趣的文章:
- 基于jQuery實(shí)現(xiàn)中英文切換導(dǎo)航條效果
- asp.net實(shí)現(xiàn)中英文多域名檢測(cè)的方法
- C++統(tǒng)計(jì)中英文大小寫字母、數(shù)字、空格及其他字符個(gè)數(shù)的方法
- js判斷字符長度及中英文數(shù)字等
- java實(shí)現(xiàn)十六進(jìn)制字符unicode與中英文轉(zhuǎn)換示例
- js判斷字符長度以及中英文數(shù)字等
- php 中英文語言轉(zhuǎn)換類
- php 中英文語言轉(zhuǎn)換類代碼
- php自動(dòng)跳轉(zhuǎn)中英文頁面
- jquery結(jié)合html實(shí)現(xiàn)中英文頁面切換
相關(guān)文章
詳解js的事件處理函數(shù)和動(dòng)態(tài)創(chuàng)建html標(biāo)記方法
本文主要對(duì)javascript的事件處理函數(shù),動(dòng)態(tài)創(chuàng)建html標(biāo)記的兩種方法進(jìn)行詳細(xì)介紹,具有很好的參考價(jià)值,需要的朋友一起來看下吧2016-12-12發(fā)布一個(gè)基于javascript的動(dòng)畫類 Fx.js
支持大部分CSS3屬性的動(dòng)畫(可能要指定詳細(xì)的屬性值)。2010-11-11JS中的六種繼承方式以及優(yōu)缺點(diǎn)總結(jié)
JS作為面向?qū)ο蟮娜躅愋驼Z言,繼承也是其非常強(qiáng)大的特性之一,那么如何在JS中實(shí)現(xiàn)繼承呢?下面這篇文章主要給大家介紹了關(guān)于JS中六種繼承方式以及優(yōu)缺點(diǎn)的相關(guān)資料,需要的朋友可以參考下2021-10-10javascript實(shí)現(xiàn)yield的方法
這篇文章介紹了javascript實(shí)現(xiàn)yield的方法,有需要的朋友可以參考一下2013-11-11ligerUI---ListBox(列表框可移動(dòng)的實(shí)例)
下面小編就為大家分享一篇ligerUI---ListBox(列表框可移動(dòng)的實(shí)例),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2017-11-11Bootstrap媒體對(duì)象的實(shí)現(xiàn)
在web頁面中,圖片居左,內(nèi)容居右排列,是非常常見的效果,它也就是媒體對(duì)象,它是一種抽象的樣式,可以用來構(gòu)建不同類型的組件。本文給大家介紹Bootstrap媒體對(duì)象的實(shí)現(xiàn),感興趣的朋友一起學(xué)習(xí)吧2016-05-05js實(shí)現(xiàn)頁面刷新滾動(dòng)條位置不變
本文介紹了js實(shí)現(xiàn)頁面刷新滾動(dòng)條位置不變的實(shí)例代碼,需要的朋友可以看下2016-11-11