Javascript总结 - 1

简介:

1, 使用JS进行校验


<script type= "text/javascript">
function validate()
{
   var fm = document.forms[0];
   var un = fm.username.value;
   var pw = fm.password.value;
   if(un== null || un==""){
    alert( "username should not null");
    fm.username.focus();
     return;
  }
   //password.................
}
</script>


<input name= "submit" onclik= "validate()">

 

 

常用JS脚本:script/client_validate.js

 
 
  1. //是否为空校验 
  2. function isEmpty(s) { 
  3.     var lll=trim(s); 
  4.     if( lll == null || lll.length == 0 ) 
  5.         return true; 
  6.     else 
  7.         return false; 
  8.  
  9. //删除字符串左边的空格 
  10. function ltrim(str) {  
  11.     if(str.length==0) 
  12.         return(str); 
  13.     else { 
  14.         var idx=0
  15.         while(str.charAt(idx).search(/\s/)==0) 
  16.             idx++; 
  17.         return(str.substr(idx)); 
  18.     } 
  19.  
  20. //删除字符串右边的空格 
  21. function rtrim(str) {  
  22.     if(str.length==0) 
  23.         return(str); 
  24.     else { 
  25.         var idx=str.length-1; 
  26.         while(str.charAt(idx).search(/\s/)==0) 
  27.             idx--; 
  28.         return(str.substring(0,idx+1)); 
  29.     } 
  30.  
  31. //删除字符串左右两边的空格 
  32. function trim(str) {  
  33.     return(rtrim(ltrim(str))); 
  34.  
  35. /*日期相比较*/ 
  36. function compareDate(date1, date2) { 
  37.     if (trim(date1) == trim(date2))      
  38.         return 0; 
  39.     if (trim(date1) > trim(date2))       
  40.         return 1; 
  41.     if (trim(date1) < trim(date2))       
  42.         return -1; 
  43.  
  44. //校验是否是Email 
  45. function isEmail(eml) { 
  46.     if(trim(eml)!='') { 
  47.       var re=new RegExp("@[\\w]+(\\.[\\w]+)+$"); 
  48.       return(re.test(eml)); 
  49.     } 
  50.     else 
  51.       return(true); 
  52.  
  53. //是否是电话号 
  54. function isTel(tel) { 
  55.     var charcode; 
  56.     for (var i=0; i<tel.length; i++)     
  57.     { 
  58.         charcode = tel.charCodeAt(i); 
  59.         if (charcode < 48 && charcode != 45 || charcode > 57)    
  60.             return false; 
  61.     } 
  62.     return true; 
  63.  
  64. //校验是否是实数 
  65. function isnumber(num) { 
  66.     var re=new RegExp("^-?[\\d]*\\.?[\\d]*$"); 
  67.     if(re.test(num)) 
  68.         return(!isNaN(parseFloat(num))); 
  69.     else 
  70.         return(false); 
  71.  
  72. //校验是否是整数 
  73. function isinteger(num) { 
  74.     var re=new RegExp("^-?[\\d]*$"); 
  75.     if(re.test(num)) 
  76.         return(!isNaN(parseInt(num))); 
  77.     else 
  78.         return(false); 

 

使用JS进行验证:

 
 
  1. <script src="./script/client_validate.js"></script> 
  2. <script type="text/javascript"> 
  3.     function js_verify(addr){   
  4.         var part_addr=addr.split(".");   
  5.        
  6.         if(part_addr.length!=4){   
  7.                return false;   
  8.            }   
  9.         else{   
  10.             var part;   
  11.             for(part in part_addr){   
  12.                        
  13.                     if(isNumeric(part)){   
  14.                            
  15.                           if(parseInt(part_addr[part])<0||parseInt(part_addr[part])>255){   
  16.                                
  17.                                 return false;   
  18.                           }   
  19.                   }   
  20.                   else{   
  21.                        
  22.                       return false;   
  23.                        
  24.                  }   
  25.              }   
  26.     }   
  27.     return true;   
  28.     }   
  29.  
  30.     function isNumeric(str){   
  31.        
  32.         if(str.length==0){   
  33.                
  34.             return false;   
  35.         }   
  36.         for(var i=0;i<str.length;i++){   
  37.                
  38.                 if(str.charAt(i)<"0"||str.charAt(i)>"9"){   
  39.                        
  40.                     return false;   
  41.                 }   
  42.                    
  43.             }   
  44.                
  45.         return true;   
  46.     }   
  47.  
  48.     function valdiateApply(){ 
  49.         var usercode = document.getElementById("usercode"); 
  50.         var ip = document.getElementById("ip"); 
  51.         var reason = document.getElementById("reason"); 
  52.          
  53.         if (trim(usercode.value) == "") { 
  54.             alert("用户代码不能为空!"); 
  55.             usercode.focus(); 
  56.             return false; 
  57.         } 
  58.         var re = new RegExp(/^[0-9]{3,5}$/); 
  59.         if (!re.test(trim(usercode.value))) { 
  60.             alert("必须输入数字3~5位!"); 
  61.             usercode.focus(); 
  62.             return false; 
  63.         } 
  64.      
  65.         if(trim(ip.value) == ""){ 
  66.             alert("IP地址不能为空!"); 
  67.             ip.focus(); 
  68.             return false; 
  69.         } 
  70.      
  71.         if(!js_verify(ip.value)){ 
  72.             alert("IP地址不符合要求!"); 
  73.             ip.focus(); 
  74.             return false; 
  75.         } 
  76.  
  77.         if(trim(reason.value) == ""){ 
  78.             alert("申请原因不能为空!"); 
  79.             reason.focus(); 
  80.             return false;    
  81.         } 
  82.     } 
  83.  
  84. </script> 
  85.  
  86. <body> 
  87. <h1>机器root密码申请</h1> 
  88. <hr> 
  89. <form action="handle" method="post"> 
  90. <table> 
  91.     <tr> 
  92.         <th><label for="usercode">工号</label></th> 
  93.         <td><input type="text" id="usercode" name="usercode" /></td> 
  94.     </tr> 
  95.     <tr> 
  96.         <th><label for="ip">机器IP</label></th> 
  97.         <td><input type="text" id="ip" name="ip" /></td> 
  98.     </tr> 
  99.     <tr> 
  100.         <th><label for="reason">申请原因</label></th> 
  101.         <td><input type="text" id="reason" name="reason" /></td> 
  102.     </tr> 
  103.     <tr> 
  104.         <th><label for="submit"></label></th> 
  105.         <td><input type="submit" value="提交" 
  106.             onClick="return valdiateApply()" /> <label for="reset"></label> <input 
  107.             type="reset" value="重置" /></td> 
  108.     </tr> 
  109.  
  110. </table> 
  111. </form> 
  112. </body> 

 =======================================================================

1、函数

l encodeURI及encodeURIComponent方法

  返回对一个URI字符串编码后的结果。

l decodeURI及decodeURIComponent()方法

  将一个已编码的URI字符串解码成最初始的字符串并返回。

l parseInt方法

  将一个字符串按指定的进制转换成一个整数,语法格式为:parseInt(numString, [radix])。如果没有指定第二个参数,则前缀为 ‘0x’ 的字符串被视为十六进制,前缀为 ‘0’ 的字符串被视为八进制,所有其他字符串都被视为是十进制。

l parseFloat方法

  将一个字符串转换成对应的小数。

l isNaN方法

  用于检测parseInt和parseFloat方法的返回值是否为NaN。

l escape方法

  返回对一个字符串进行编码后的结果字符串。所有空格、标点、重音符号以及任何其他非 ASCII 字符都用 %xx 编码替换,其中xx等于表示该字符的Unicode编码的十六进制数,字符值大于255的字符以%uxxxx格式存储。

l unescape 方法

  将一个用escape方法编码的结果字符串解码成原始字符串并返回。

l eval 方法

  将其中的参数字符串作为一个JavaScript表达式执行。

2、String类

 

llength属性

lanchor、big、bold、fontcolor、link等方法

lcharAt方法

  注意:一个字符串中的第一个字符的索引位置为0,依次类推。

lcharCodeAt方法

  注意:返回的结果是字符的unicode编码。

lconcat方法,连接字符串

lindexOf方法及lastIndexOf方法

lmatch、search方法

lreplace、split方法

lslice方法

  说明:str1.slice(0)和str1.slice(0,-1)都是返回整个字符串。

lsubstr、substring方法

  substring方法返回的内容不包含结束位置的字符。

ltoLowerCase、toUpperCase 方法 

 

 

3、数组操作

length-获得数组的长度;

concat-连接数组;

join-把数组转换成字符串;

pop-弹出一个元素;

push-放入一个元素;

reverse-颠倒数据中的元素顺序;

shift-移出第一个元素;

slice-截取数组;

sort-排序数组;

unshift-在前面追加元素;

 

 

 本文转自 tianya23 51CTO博客,原文链接:http://blog.51cto.com/tianya23/315900,如需转载请自行联系原作者

相关文章
|
JavaScript 前端开发 API
JavaScript中字符串的API使用总结
JavaScript中字符串的API使用总结
|
JSON 编解码 JavaScript
【笔记】js URL编码解析总结
js URL编码解析总结
235 0
|
JavaScript 前端开发 API
JavaScript数组API总结
JavaScript数组API总结
JavaScript数组API总结
|
JavaScript 前端开发
JavaScript总结:typeof与instanceof的区别,及Object.prototype.toString()方法
JavaScript总结:typeof与instanceof的区别,及Object.prototype.toString()方法
157 0
JavaScript总结:typeof与instanceof的区别,及Object.prototype.toString()方法
|
JavaScript 前端开发
JavaScript总结:let变量(弥补var的缺陷)
JavaScript总结:let变量(弥补var的缺陷)
114 0
JavaScript总结:let变量(弥补var的缺陷)
|
JavaScript 前端开发
JavaScript总结: javascript中使用var定义变量的变量提升问题
JavaScript总结: javascript中使用var定义变量的变量提升问题
99 0
JavaScript总结: javascript中使用var定义变量的变量提升问题
|
存储 前端开发 JavaScript
JavaScript总结:关于堆栈、队列中push()、pop()、shift()、unshift()使用方法的理解
JavaScript总结:关于堆栈、队列中push()、pop()、shift()、unshift()使用方法的理解
192 0
JavaScript总结:关于堆栈、队列中push()、pop()、shift()、unshift()使用方法的理解
|
JavaScript 前端开发 内存技术
JS入门到进阶知识总结(四)
JS入门到进阶知识总结(四)
JS入门到进阶知识总结(四)
|
JavaScript 前端开发 程序员