使用純JS代碼判斷字符串中有多少漢字的實現(xiàn)方法(超簡單實用)
在網(wǎng)站開發(fā)中,經(jīng)常會簡單使用js代碼來判斷字符串中有多少漢字的功能。今天小編抽時間給大家分享實現(xiàn)代碼。廢話不多說了,直接給大家貼代碼了。
$("form").submit(function () { var content = editor.getContentTxt(); var sum = 0; re = /[\u4E00-\u9FA5]/g; //測試中文字符的正則 if (content) { if (re.test(content)) //使用正則判斷是否存在中文 { if (content.match(re).length <= 10) { //返回中文的個數(shù) $.dialog.tips("帖子正文不能小于10個漢字!"); return false; } else { var $submit = $("input[type='submit']").attr("disabled", true); setTimeout(function () { $submit.attr("disabled", false) }, 5000); return true; } } else { $.dialog.tips("帖子正文不能小于10個漢字!"); return false; } } else { $.dialog.tips("帖子正文不能小于10個漢字!"); return false; } });
好了,以上代碼是js判斷字符串有多少漢字的實現(xiàn)方法。
ps:JS判斷輸入字符串長度(漢字算兩個字符,字母數(shù)字算一個)
漢字在數(shù)據(jù)庫中占2個字符,如果輸入字符超過數(shù)據(jù)庫表字段長度,會出現(xiàn)錯誤,因此需要在前臺進行判斷。有兩種方法進行判斷:
方法一:使用正則表達式,代碼如下:
function getByteLen(val) { var len = 0; for (var i = 0; i < val.length; i++) { var a = val.charAt(i); if (a.match(/[^\x00-\xff]/ig) != null) { len += 2; } else { len += 1; } } return len; }
方法二:使用字符unicode判斷:方法如下:
function getByteLen(val) { var len = 0; for (var i = 0; i < val.length; i++) { var length = val.charCodeAt(i); if(length>=0&&length<=128) { len += 1; } else { len += 2; } } return len; }
以上所述是小編給大家介紹的使用純JS代碼判斷字符串中有多少漢字的實現(xiàn)方法(超簡單實用),希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的。
相關文章
webpack-url-loader 解決項目中圖片打包路徑問題
這篇文章主要介紹了webpack-url-loader 解決項目中圖片打包路徑問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-02-02IE之動態(tài)添加DOM節(jié)點觸發(fā)window.resize事件
因為頁面很多UI是絕對定位的,所以當窗口大小改變的時候會使原先的布局混亂,只好在每次window.resize的時候重新布局...2010-07-07微信小程序Page中data數(shù)據(jù)操作和函數(shù)調(diào)用方法
這篇文章主要介紹了微信小程序Page中data數(shù)據(jù)操作和函數(shù)調(diào)用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-05-05javascript setTimeout()傳遞函數(shù)參數(shù)(包括傳遞對象參數(shù))
由于需要,我要用到setTimeout()并且在里邊的函數(shù)參數(shù)傳遞一個參數(shù),就像這樣setTimeout("fun(參數(shù))", 1000)。但是以我這種寫法,js會報錯,說‘參數(shù)’未定義。2010-04-04