字符串获取类、封装检测数字的方法
1、charAt()方法: 从整个字符串中找到某子字符,即返回指定位置的字符。charAt(str.length)。里面的数字最大为字符串长度减一
eg:stringObject.charAt(index);如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串
var str = '妙味课堂'; var str = '妙味课堂'; // alert( str.length ); // alert( str.charAt() ); //默认为第0个 // alert( str.charCodeAt() ); // 22937 // alert( str.charCodeAt(1) ); // 21619 alert( str.charCodeAt() ); // 0~9: 48~57 a~z: 97~122 A~Z: 65~90 // alert( String.fromCharCode(22937, 21619) ); </script>
2、charCodeAt():可返回指定位置的字符的 Unicode 编码,执行方法与charAt()相似
3、fromCharCode():从字符编码创建一个字符串。与charCodeAt()正好相反
语法:String.fromCharCode(numX,numX,...,numX);
alert(String.fromCharCode(2293));
小例子1、 只能输入数字的 输入框
1 <body> 2 3 <input type="text" /> 4 <input type="button" value="检测" /> 5 6 <script> 7 8 // alert( detectNum('123456') ); 9 10 var aInp = document.getElementsByTagName('input'); 11 12 aInp[1].onclick = function () { 13 14 var val = aInp[0].value; 15 16 if ( detectNum(val) ) { 17 alert( '恭喜,'+ val +'全是数字' ); 18 } else { 19 alert('输入有误'); 20 } 21 }; 22 23 function detectNum ( str ) { 24 var n = 0; 25 for ( var i=0; i<str.length; i++ ) { 26 n = str.charCodeAt(i); 27 if ( n<48 || n>57 )return false; 28 } 29 return true; 30 } 31 32 </script>
小例子2、fromCharCode()返回字符串实例
<script> /* document.body.innerHTML = String.fromCharCode(22937); document.body.innerHTML += String.fromCharCode(21619); */ var str = ''; for ( var i=10000; i<20000; i++ ) { str += String.fromCharCode(i) + ' '; } document.body.innerHTML = str; </script>
小例子3、字符串加密
<body> <input type="text" /> <input type="button" value="加密" /> <div id="div1">加密...</div> <script> var aInp = document.getElementsByTagName('input'); var oDiv = document.getElementById('div1'); aInp[1].onclick = function () { var str = aInp[0].value; // 妙味课堂 var str1 = ''; // alert( str.charCodeAt(0) ); for ( var i=0; i<str.length; i++ ) { str1 += String.fromCharCode(str.charCodeAt(i)-520); } oDiv.innerHTML = str1; }; </script> </body>
总结用法:
alert( 'miaov'.charAt(2) );
alert( 'miaov'.charCodeAt(2) );
alert( String.fromCharCode(22937, 21619) );