var hasChinese = function(val) { var patterns = { japanese: /[\u0800-\u4E00]/, chinese: /[\u4E00-\u9fa5]/, korean: /[\u9fa5-\uFFFF]/, threeBytes: /[\u0080-\uFFFF]/, fullWidthSymbol: /[\uFF00-\uFFFF]/, fullWidthCharNumber: /[\uFE30-\uFFA0]/, fullWithAll: /[^\uFF00-\uFFFF]/, fullWithAll2: /[^\x00-\xff]/ }; return patterns.chinese.test(val); } var toASCII = function(chars) { var ascii = ''; for(var i=0, l=chars.length; i<l; i++) { var c = chars[i].charCodeAt(0); if (c >= 0xFF00 && c <= 0xFFEF) { c = 0xFF & (c + 0x20); } ascii += String.fromCharCode(c); } return ascii; } // example toASCII("ABC"); // returns 'ABC' 0x41