小試牛刀3之JavaScript基礎題

来源:http://www.cnblogs.com/jasmine-95/archive/2016/03/19/5239945.html
-Advertisement-
Play Games

1、讓用戶輸入兩個數字,然後輸出相加的結果。 *prompt() 方法用於顯示可提示用戶進行輸入的對話框。 語法: 說明: 如果用戶單擊提示框的取消按鈕,則返回 null。如果用戶單擊確認按鈕,則返回輸入欄位當前顯示的文本。 在用戶點擊確定按鈕或取消按鈕把對話框關閉之前,它將阻止用戶對瀏覽器的所有輸


JavaScript基礎題

1、讓用戶輸入兩個數字,然後輸出相加的結果。

  *prompt() 方法用於顯示可提示用戶進行輸入的對話框。

    語法:

prompt(text,defaultText)

    

    說明:

    如果用戶單擊提示框的取消按鈕,則返回 null。如果用戶單擊確認按鈕,則返回輸入欄位當前顯示的文本。

  在用戶點擊確定按鈕或取消按鈕把對話框關閉之前,它將阻止用戶對瀏覽器的所有輸入。在調用 prompt() 時,將暫停對 JavaScript 代碼的執行,在用戶作出響應之前,不會執行下一條語句。

  *parseInt() 函數可解析一個字元串,並返回一個整數。

    語法:

parseInt(string, radix)

                  

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6     <script type="text/javascript">
 7         num1 = prompt("請輸入第一個數字:"+"");
 8         num2 = prompt("請輸入第二個數字:"+"");
 9         num = parseInt(num1)+parseInt(num2);
10         document.write("你輸入的第一個數字是:"+num1+"<br/>");
11         document.write("你輸入的第二個數字是:"+num2+"<br/>");
12         document.write("兩個數相加的結果是:"+num);
13     </script>
14 </head>
15 <body>
16 
17 </body>
18 </html>

結果:

 

 

2、利用JavaScript的知識做一個簡易計算器。

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title>簡易計算器</title>
 6 </head>
 7 <body>
 8     <form>
 9         <input type="text" id="num1">    <!--第一個數字-->
10         <select id="check">    <!--運算的種類-->
11             <option value="add">+</option>
12             <option value="decrease">-</option>
13             <option value="multiply">*</option>
14             <option value="division">/</option>
15         </select>
16         <input type="text" id="num2">    <!--第二個數字-->
17         <input type="button" value="=" onclick="calculator()">    <!--等於號,即按鈕-->
18         <input type="text" id="result">   <!--結果顯示-->
19     </form>
20    <script type="text/javascript">
21        function calculator() {
22            var n1 = document.getElementById("num1").value;     <!--獲取第一個數值-->
23            var n2 = document.getElementById("num2").value;   <!--獲取第二個數值-->
24            var obj =  document.getElementById("check").value;   <!--獲取運算的種類-->
25 
26            var result = 0;   <!--初始化變數-->
27 
28            switch(obj) {
29                case "add":
30                    result = parseInt(n1) + parseInt(n2);
31                    break;
32                case "decrease":
33                    result = parseInt(n1) - parseInt(n2);
34                    break;
35                case "multiply":
36                    result = parseInt(n1) * parseInt(n2);
37                    break;
38                case "division":
39                    if(parseInt(n2) != 0) {
40                        result = parseInt(n1) / parseInt(n2);
41                    }
42                  else alert("除數不能為零!");
43                    break;
44            }
45            document.getElementById("result").value=result;
46        }
47 
48    </script>
49 </body>
50 </html>

效果:

                     

 

 

3、確認表單必填項目的完整性。

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title>確認表單填寫</title>
 6 </head>
 7 <body>
 8     <form>
 9         用戶名:<br/>
10         <input type="text" id="Name"><br/>
11         密碼:<br/>
12         <input type="text" id="Key"><br/>
13         確認密碼:<br/>
14         <input type="text" id="reKey"><br/>
15         <input type="button" value="提交" onclick="check_submit()">
16     </form>
17     <script type="text/javascript">
18         function check_submit() {
19             var name = document.getElementById("Name").value;    <!--獲取用戶名-->
20             var key = document.getElementById("Key").value;   <!--獲取密碼-->
21             var rekey = document.getElementById("reKey").value;   <!--獲取確認的密碼-->
22 
23             if(name=="") alert("請輸入用戶名!");
24             if(key=="") alert("請輸入密碼!");
25             if(rekey=="") alert("請輸入確認密碼!");
26             if(rekey != key) alert("兩次輸入的密碼應該一致,請重新輸入!")
27         }
28     </script>
29 </body>
30 </html>

結果:

           

      *document.getElementById可以簡寫為$*

 

 

4、創建更人性化的表單,要求:

    (1)滑鼠指針進入文本框時自動獲得焦點並選擇。

    (2)滑鼠左鍵單擊“用戶名”文本框時自動清空內容。

    (3)“用戶名”文本框失去焦點時判斷內容是否為空。

    (4)提交後將“提交”按鈕設置為不可用。

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title></title>
 6     <script type="text/javascript">    
 7         function check_submit() {               //判斷內容是否為空
 8             var name = document.getElementById("Name").value;    //獲取用戶名
 9             var key = document.getElementById("Key").value;   //獲取密碼
10             var rekey = document.getElementById("reKey").value;   //獲取確認的密碼
11             if(name=="") alert("請輸入用戶名!");
12             if(key=="") alert("請輸入密碼!");
13             if(rekey=="") alert("請輸入確認密碼!");
14             if(rekey != key) alert("兩次輸入的密碼應該一致,請重新輸入!")
15         }
16 
17         function mover() {       //滑鼠指針進入文本框時自動獲得焦點並選擇
18             event.srcElement.focus();
19             event.srcElement.select();
20         }
21 
22         function mclick() {        //滑鼠左鍵單擊“用戶名”文本框時自動清空內容
23             if(event.srcElement.value=="請輸入用戶名") event.srcElement.value = "";    //event.srcElement:表示的當前的這個事件源
24         }
25 
26         function mblur() {
27             if(event.srcElement.value=="") event.srcElement.value = "請輸入用戶名";    //“用戶名”文本框失去焦點時判斷內容是否為空
28         }
29     </script>
30 </head>
31 <body>
32     <form>
33         用戶名:<br/>
34         <input type="text" id="Name" value="請輸入用戶名" onclick="mclick()" onblur="mblur()" onmouseover="mover()"><br/>
35         密碼:<br/>
36         <input type="password" id="Key" onmouseover="mover()"><br/>
37         確認密碼:<br/>
38         <input type="password" id="reKey" onmouseover="mover()"><br/>
39         <input type="button" value="提交"  onclick="check_submit()">
40     </form>
41 </body>
42 </html>

 

效果:     

 

 

 

5、使用遞歸演算法求自然數的階乘。

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title>自然數階乘</title>
 6     <script type="text/javascript">
 7         function text() {
 8             var x = document.getElementById("num").value;
 9             function jieCheng(n) {
10                 if(n>0) return (jieCheng(n-1)*n);
11                 return 1;
12             }
13             document.getElementById("result").value = jieCheng(x);
14         }
15     </script>
16 </head>
17 <body>
18     請輸入正整數n:
19     <input type="text" id="num">
20     <input type="text" id="result">
21     <input type="button" value="結果" onclick="text()">
22 </body>
23 </html>

  結果:

                     

 

 

6、由初速度和仰角求炮彈的射程。

  isNaN()的意思是非數字,裡面傳入數字的話就返回false,傳入的不是數字的話就返回true,【空的話也是返回true,一個點也是返回true,點個數字組合返回的是false,說明是數字】

   toFixed() 方法可把 Number 四捨五入為指定小數位數的數字。

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title>由初速度和仰角求炮彈的射程</title>
 6     <script type="text/javascript">
 7         function cal() {
 8             var spe = document.getElementById("speed").value;
 9             var ang = document.getElementById("angle").value;
10             var g = 10; //重力加速度
11 
12             //判斷輸入的信息是否完整
13             if(spe==""||ang=="") alert("輸入的信息不完整,請輸入未完成的信息!");
14 
15             //判斷輸入的信息是否為數值
16             if(isNaN(spe)||isNaN(ang)) alert("您輸入的是非數字,請重新輸入!");
17 
18             //計算飛行時間
19             var tim = Math.sin(ang/180*Math.PI)*spe/g*2	   

您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • ECMAScript5為數組定義了5個迭代方法。 每個方法都接收兩個參數:要在每一項上運行的函數 和 (可選的)運行該函數的作用域對象。 傳入這些方法中的函數會接收三個參數:數組項的值,該項在數組中的位置,數組對象本身。 請看以下例子:
  • StringBuffer方法的js自定義封裝: <!doctype html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="Generator" content="EditPlus®"> <meta name="Author"
  • Bootstrap中的表單控制項狀態主要有三種:焦點狀態,禁用狀態,驗證狀態。 一、焦點狀態:該狀態告訴用戶可輸入或選擇東西 焦點狀態通過偽類“:focus”以實現。 bootstrap.css相應源碼
  • 一、前言 在使用jQuery選擇器獲取到jQuery包裝集後,我們就要對這些包裝集進行各種操作 二、創建新的元素 1.使用HTMLDOM創建元素 (1)什麼是DOM 當網頁被載入時,瀏覽器會創建頁面的文檔對象模型(Document Object Model) (2)使用HTML DOM創建元素 1 ...
  • js的封裝分為以下幾種模式: 工廠模式,代碼如下: <!doctype html><html lang="en"><head><meta charset="UTF-8"><meta name="Generator" content="EditPlus®"><meta name="Author" co
  • 簡單介紹了HTML5 Canvas的來歷、瀏覽器相容性,主要內容是如何實現轉盤抽獎,最後的DEMO非常簡陋,真實場景還會有很多需要考慮和改進的地方(比如:瀏覽器首碼),這裡只講一步步實現的思路。
  • 今天做了個微博發佈欄的效果,涉及到的知識點包括以下: 1.判斷IE的方法:直接用 var ie=!-[1,];即可 2.連續發生事件的用法: IE下:觸發對象.onpropertychange 標準下:觸發對象.oninput 3.焦點聚集和移開事件。onfocus和onblur 4.判斷單位元組(0
  • 在寫網頁過程中,會遇到這種需要多個圖標展示: 如上圖中的「女裝」文字左邊的圖標。容易想到的解決方法是為每張圖片加入<img>標簽,但這樣做會增加HTTP請求數量,影響網站載入速度。比這更優的解決方案是:雪碧圖sprite。 所謂雪碧圖就是把我們所需要的所有小圖片用CSS sprite或者PS工具拼接
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...