函数及其使用

  1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2 <html xmlns="http://www.w3.org/1999/xhtml">
  3     <head>
  4         <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
  5         <title>函数及其使用</title>
  6         <script type="text/javascript">
  7             //指定单价和数量 ,返回计算后的金额,
  8             //函数定义放在head中,在页面加载之前读取;放在body中,加载完整个页面之后读取;如果定义之前读取错。
  9             function amount(price, number)
 10             {
 11                 var sum = price * number;
 12                 alert("单价乘以数量的金额是" + sum);
 13                 return sum;
 14             }
 15             //通过自定义函数屏蔽鼠标和键盘相关事件
 16             function maskingKeyboard()
 17             {
 18                 if (event.keyCode === 8)//判断是否为退格键
 19                 {
 20                     event.keyCode = 0;
 21                     event.returnValue = false;
 22                     alert("当前设置不允许使用退格键!");
 23                 }
 24                 if (event.keyCode === 13)//判断是否为回车键
 25                 {
 26                     event.keyCode = 0;
 27                     event.returnValue = false;
 28                     alert("当前设置不允许使用回车键!");
 29                 }
 30                 if (event.keyCode === 116)//判断是否为回车键
 31                 {
 32                     event.keyCode = 0;
 33                     event.returnValue = false;
 34                     alert("当前设置不允许使用F5刷新 键!");
 35                 }
 36                 //判断是否为ALT+方向键左 或方向键右
 37                 if (event.altKey && ((event.keyCode === 37) || (event.keyCode === 39)))//判断是否为ALT+方向键左
 38                 {
 39                     event.returnValue = false;
 40                     alert("当前设置不允许使用alt+左右键!");
 41                 }
 42                 if (event.ctrlKey && event.keyCode === 78)//判断是否为ctrl+N键
 43                 {
 44                     event.returnValue = false;
 45                     alert("当前设置不允许使用ctrl+N键!");
 46                 }
 47                 if (event.shiftKey && event.keyCode === 121)//判断是否为shift+F10键
 48                 {
 49                     event.returnValue = false;
 50                     alert("当前设置不允许使用shift+F10键!");
 51                 }
 52             }
 53             function rightKey()
 54             {
 55                 if (event.button === 2)//判断是否为ALT+方向键左
 56                 {
 57                     event.returnValue = false;
 58                     alert("当前设置不允许鼠标右键!");
 59                 }
 60             }
 61             //嵌套函数
 62             var numc = 5;
 63             function addNew(numa, numb)
 64             {
 65                 function innerAdd()
 66                 {
 67                     alert("参数的加和为:" + (numa + numb + numc));
 68                 }
 69                 return innerAdd();
 70             }
 71             //递归函数
 72 
 73             function tenFactorial(numd)
 74             {
 75                 if (numd <= 1) {
 76                     return 1;
 77                 }
 78                 else {
 79                     return(tenFactorial(numd - 1) * numd);
 80                 }
 81             }
 82             function clockon() {
 83                 var now = new Date();
 84                 var year = now.getFullYear();
 85                 var month = now.getMonth() + 1;
 86                 var date = now.getDate();
 87                 var day = now.getDay();//星期几?
 88                 var hour = now.getHours();
 89                 var minu = now.getMinutes();
 90                 var sec = now.getSeconds();
 91                 var week;
 92                 if (month < 10)
 93                     month = "0" + month;
 94                 if (date < 10)
 95                     date = "0" + date;
 96                 if (hour < 10)
 97                     hour = "0" + hour;
 98                 if (minu < 10)
 99                     minu = "0" + minu;
100                 if (sec < 10)
101                     sec = "0" + sec;
102                 var arr_week = new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
103                 var time = year + "" + month + "" + date + "" + arr_week[day] + " " + hour + ":" + minu + ":" + sec;
104                 // alert(time);
105                 if (document.all)
106                 {
107                     bgclock.innerHTML = "系统公告:[" + time + "]";
108                     // bgclock.innerHTML="<span style='color:red'>Hi</span>";
109                     //火狐、谷歌不支持innerHTML取值,以后学js
110                 }
111                 var timer = setTimeout("clockon(bgclock)", 1000);
112             }
113             //自动生成验证码:
114             function randomCode(ncode) {
115                 var result = "";
116                 if (ncode == 0)
117                 {
118                     alert("please input number!");
119                 }
120                 else {
121                     for (r = 1; r <= parseInt(ncode); r++)
122                     {
123                         result = result + (parseInt(Math.random() * 10)).toString();
124                     }
125                     alert(result);
126                 }
127             }
128         </script>
129 
130     </head>
131     <body onkeydown="maskingKeyboard()" onLoad="clockon(bgclock)">
132         hello,world!
133         <br/>
134         <div style="background:pink;width:500px;height:800px;padding: 10px;">
135             <from name="form1" action="" method="post" id="form1">
136                 <div  id="bgclock" style="height:20px;"></div>
137                 <table style="border:2px solid red;padding:10px;">
138                     <tr>
139                         <th colspan="2" bgcolor="AliceBlue">划整为零——函数及其使用</th>
140                     </tr>
141                     <tr >
142                         <td>
143                             <input name="price" type="text" id="price" value="80"/>
144                         </td>
145                         <td>
146                             <input name="number" type="text" id="number" value="30"/>
147                         </td>
148                     </tr>
149                     <tr>
150                         <td>
151                             事件中调用函数:
152                         </td>
153                         <td>
154                             <script type="text/javascript">
155                                 var number = document.getElementById("number").value;
156                                 var price = document.getElementById("price").value;
157                                 document.onmousedown = rightKey;
158                             </script>
159                             <input name="submit" type="button" class="" 
160                                    onClick="amount(document.getElementById('price').value, document.getElementById('number').value);" value="单价数量总价"/>
161                         </td>
162                     </tr>
163                     <tr>
164                         <td>超链接调用函数:</td>
165                         <td><a href="javascript:amount(price,number)">单价数量总价</a>
166                         </td>
167                     </tr>
168                     <tr>
169                         <td>
170                             函数中参数的使用:
171                         </td>
172                         <td>
173                             <!--定义函数时指定的参数叫形参,调用函数实际传递的参数叫实参,形参、实参一一对应-->
174                             <input name="submit" type="button" class=""  value="总价=单价*数量" 
175                                    onClick="amount(document.getElementById('price').value, document.getElementById('number').value);
176                                            ;"/>
177                         </td>
178                     </tr>
179                     <tr>
180                         <td>
181                             使用函数的返回值return:
182                         </td>
183                         <td>
184                             <!--将需要返回的值赋值给变量,最后将此变量返回。return语句 -->
185                             <input name="submit" type="button" class=""  value="返回值乘以3?" onClick="amount(amount(price, number), 3);"/>
186                         </td>
187                     </tr>
188                     <tr>
189                         <td  align="center" colspan="2">
190                             <b>几种特殊的函数</b>
191                         </td>
192                     </tr>
193                     <tr>
194                         <td colspan="2">
195                             页面中不允许右键,不允许alt+左右键,不允许shift+F10,不允许ctrl+N;
196                         </td>
197                     </tr>
198                     <tr>
199                         <td  align="center" colspan="2">
200                             <b>js中的内置函数</b
201                         </td>
202                     </tr>
203                     <tr>
204                         <td colspan="2">
205                             <script type="text/javascript">
206                                 /*
207                                  *  parseInt()函数
208                                  */
209                                 var num1 = "123.345abc";
210                                 var num2 = "abc123";
211                                 document.write("1.使用parseInt()函数:</br>");
212                                 document.write("123.345abc转化结果为:" + parseInt(num1) + "<br>");
213                                 document.write("abc123转化结果为:" + parseInt(num2) + "<br><br>");
214                                 /*
215                                  *  parseFloat()函数/isNaN()函数
216                                  */
217                                 var num3 = "123.4567abc";
218                                 document.write("2.使用parseInt()函数/isNaN()函数:</br>");
219                                 document.write("123.4567abc转换结果为:" + parseFloat(num3) + "<br>");
220                                 document.write("abc123转化结果后是否为NaN:" + isNaN(parseInt(num2)) + "<br><br>");
221                                 /*
222                                  *  isFinite()函数
223                                  */
224                                 document.write("3.使用isFinite()函数:</br>");
225                                 document.write("1/0计算结果是否无穷大:" + isFinite(1 / 0) + "<br>");
226                                 /*
227                                  *  enCodeURL()函数
228                                  */
229                                 document.write("4.使用encodeURI()函数:</br>");
230                                 document.write("转换为网络资源地址:" + encodeURI("http://127.0.0.1/save.html?name=测试") + "<br><br>");
231                                 /*
232                                  *  deCodeURL()函数
233                                  */
234                                 document.write("4.使用encodeURI()函数:</br>");
235                                 document.write("将网格资源转换为字符串为:" + decodeURI("http://127.0.0.1/save.html?name=%E6%B5%8B%E8%AF%95") + "<br>");
236                             </script>
237                         </td>
238                     </tr>
239                     <tr>
240                         <td colspan="2" align="center"><b>嵌套函数的使用:即函数中嵌套函数</b></td>     
241 
242                     </tr>
243                     <tr>
244                         <td> 
245                             调用函数addNew(10,10),加全局变量numc=5
246                         </td>
247                         <td>
248                             <input name="submit" type="button" class=""  value="10+10+5" onClick="addNew(10, 10);"/>                          
249                         </td>
250                     </tr>
251                     <tr>
252                         <td colspan="2" align="center"><b>递归函数的使用:即函数在自身函数体内调用自己</b></td>     
253 
254                     </tr>
255                     <tr>
256                         <td> 
257                             10的阶乘(n>1):f(n)=n*f(n-1)
258                         </td>
259                         <td>
260                             <!-- <input name="submit" type="button" class=""  value="10!" onClick="tenFactorial(1);"/>-->
261                             <script type="text/javascript">
262                                 document.write(tenFactorial(5));
263                             </script>                          
264                         </td>
265                     </tr>
266                     <tr>
267                         <td colspan="2" align="center"><b>通过自定义函数实时显示系统时间:</b></td>                             
268                     </tr>
269                     <tr>
270                         <td> 
271                             现在时刻是:(按钮可弹alert,注释掉了)
272                         </td>
273                         <td>
274                             <input name="submit" type="button" class=""  value="时间" onClick="clockon();"/>                          
275                         </td>
276                     </tr>
277                     <tr>
278                         <td colspan="2" align="center"><b>生成随机验证码:</b></td>                             
279                     </tr>
280                     <tr>
281                         <td> 
282                             请输出要生成几位的随机码?
283                             <input type="text" id="random" value="" ></input>
284                         </td>
285                         <td>
286                             <input name="submit" type="button"   value="验证码" onClick="randomCode(document.getElementById('random').value);"/>                          
287                         </td>
288                     </tr>
289                 </table>
290                 </form>
291         </div>
292     </body>
293 </html>

 

posted @ 2015-11-08 23:03  sunshine-habit  阅读(215)  评论(0编辑  收藏  举报