JavaScript實(shí)現(xiàn)簡(jiǎn)易計(jì)算器功能的兩種方法
本文實(shí)例為大家分享了兩種JavaScript實(shí)現(xiàn)簡(jiǎn)易計(jì)算器功能的具體代碼,供大家參考,具體內(nèi)容如下
1. 使用基本數(shù)據(jù)類(lèi)型
注意點(diǎn): prompt 用戶(hù)從瀏覽器輸入的任何數(shù)據(jù)都是字符串型的,使用數(shù)字需要強(qiáng)制轉(zhuǎn)換
// 簡(jiǎn)易對(duì)象器 function input1(){ ? ? var num1 = prompt('請(qǐng)輸入第一個(gè)數(shù):'); ? ? return parseFloat(num1); } function input2(){ ? ? var num2 = prompt('請(qǐng)輸入第二個(gè)數(shù):'); ? ? return parseFloat(num2); } // 1. 加法運(yùn)算 function add(num1, num2){ ? ? return num1 + num2; } // 2. 減法運(yùn)算 function sub(num1, num2){ ? ? return num1 - num2; } // 3. 乘法運(yùn)算 function multiply(num1, num2){ ? ? return num1 * num2; } // 4. 除法運(yùn)算 function divition(num1, num2){ ? ? return num1 / num2; } var str = '歡迎使用簡(jiǎn)易計(jì)算器:\n1. 加法運(yùn)算;\n2. 減法運(yùn)算;\n3. 乘法運(yùn)算;\n4. 除法運(yùn)算;\n5. 退出:\n請(qǐng)輸入您的選項(xiàng)'; var option; var result; do{ ? ? option = parseFloat(prompt(str)); ? ? switch (option){ ? ? case 1: ? ? ? ? result = add(input1(), input2()); ? ? ? ? alert('結(jié)果是 ' + result); ? ? ? ? break; ? ? case 2: ? ? ? ? result = sub(input1(), input2()); ? ? ? ? alert('結(jié)果是 ' + result); ? ? ? ? break; ? ? case 3: ? ? ? ? result = multiply(input1(), input2()); ? ? ? ? alert('結(jié)果是 ' + result); ? ? ? ? break; ? ? case 4: ? ? ? ? result = divition(input1(), input2()); ? ? ? ? alert('結(jié)果是 ' + result); ? ? ? ? break; ? ? case 5: ? ? ? ? alert('已退出程序'); ? ? ? ? break; ? ? default: ? ? ? ? alert('輸入錯(cuò)誤,請(qǐng)重新輸入'); ? ? ? ? break; ? ? } } while(option != 5);
效果展示:
2.使用對(duì)象,將簡(jiǎn)易計(jì)算器作為一個(gè)對(duì)象創(chuàng)建
注意點(diǎn):構(gòu)造函數(shù)命名首字母大寫(xiě)
?// 創(chuàng)建簡(jiǎn)易計(jì)算器, 一個(gè)運(yùn)算類(lèi) 注意構(gòu)造函數(shù)命名 首字母大寫(xiě) function Counter(num1, num2){ ? ? //輸入 數(shù)據(jù) 這里感覺(jué)好像有點(diǎn)多于,但是沒(méi)有的話,又有點(diǎn)奇怪 可以把下面num1num2全部加上this ? ? this.num1 = num1; ? ? this.num2 = num2; ? ? // 加 ? ? this.add = function(){ ? ? ? ? return num1 + num2; ? ? } ? ? // 減 ? ? this.sub = function(){ ? ? ? ? return num1 - num2; ? ? } ? ? // 乘 ? ? this.multiply = function(){ ? ? ? ? return num1 * num2; ? ? } ? ? // 除 ? ? this.divition = function(){ ? ? ? ? return num1 / num2; ? ? } } function input1(){ ? ? var num1 = prompt('請(qǐng)輸入第一個(gè)數(shù):'); ? ? return parseFloat(num1); } function input2(){ ? ? var num2 = prompt('請(qǐng)輸入第二個(gè)數(shù):'); ? ? return parseFloat(num2); } var str = '歡迎使用簡(jiǎn)易計(jì)算器:\n1. 加法運(yùn)算;\n2. 減法運(yùn)算;\n3. 乘法運(yùn)算;\n4. 除法運(yùn)算;\n5. 退出:\n請(qǐng)輸入您的選項(xiàng)'; var option = 0; var result; while(option != 5){ ? ? option = parseFloat(prompt(str)); ? ? if(option != 5){ //防止輸入5后下一步還運(yùn)行創(chuàng)建新運(yùn)算對(duì)象,所以直接跳過(guò)去選擇case5然后跳出循環(huán) ? ? ? ? var counter_new = new Counter(input1(), input2()); // 新的運(yùn)算對(duì)象 ? ? } ? ? switch (option){ ? ? case 1: ? ? ? ? result = counter_new.add(); ? ? ? ? alert('結(jié)果是 ' + result); ? ? ? ? break; ? ? case 2: ? ? ? ? result = counter_new.sub(); ? ? ? ? alert('結(jié)果是 ' + result); ? ? ? ? break; ? ? case 3: ? ? ? ? result = counter_new.multiply(); ? ? ? ? alert('結(jié)果是 ' + result); ? ? ? ? break; ? ? case 4: ? ? ? ? result = counter_new.divition(); ? ? ? ? alert('結(jié)果是 ' + result); ? ? ? ? break; ? ? case 5: ? ? ? ? alert('已退出程序'); ? ? ? ? break; ? ? default: ? ? ? ? alert('輸入錯(cuò)誤,請(qǐng)重新輸入'); ? ? ? ? break; ? ? } }?
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- javascript寫(xiě)的簡(jiǎn)單的計(jì)算器,內(nèi)容很多,方法實(shí)用,推薦
- js實(shí)現(xiàn)簡(jiǎn)單計(jì)算器
- 簡(jiǎn)易js代碼實(shí)現(xiàn)計(jì)算器操作
- html+js實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器代碼(加減乘除)
- js實(shí)現(xiàn)一個(gè)簡(jiǎn)易計(jì)算器
- 用JS寫(xiě)的簡(jiǎn)單的計(jì)算器實(shí)現(xiàn)代碼
- javascript-簡(jiǎn)單的計(jì)算器實(shí)現(xiàn)步驟分解(附圖)
- 純javascript代碼實(shí)現(xiàn)計(jì)算器功能(三種方法)
- Vue.js實(shí)現(xiàn)的計(jì)算器功能完整示例
- js網(wǎng)頁(yè)版計(jì)算器的簡(jiǎn)單實(shí)現(xiàn)
相關(guān)文章
javascript實(shí)現(xiàn)英文首字母大寫(xiě)
本文給大家總結(jié)了幾種可以實(shí)現(xiàn)英文首字母大寫(xiě)的javascript腳本,另附上一個(gè)CSS的實(shí)現(xiàn)方法,非常的簡(jiǎn)單實(shí)用,這里推薦給大家,有需要的小伙伴可以參考下。2015-04-04javascript比較語(yǔ)義化版本號(hào)的實(shí)現(xiàn)代碼
這篇文章先是給大家簡(jiǎn)單的介紹了下語(yǔ)義化版本號(hào),而后再用實(shí)例代碼演示語(yǔ)義化版本號(hào)的比較方法,有需要的朋友們可以參考借鑒。2016-09-09使用Javascript和DOM Interfaces來(lái)處理HTML
使用Javascript和DOM Interfaces來(lái)處理HTML...2006-10-10解決bootstrap中使用modal加載kindeditor時(shí)彈出層文本框不能輸入的問(wèn)題
這篇文章主要介紹了解決bootstrap中使用modal加載kindeditor時(shí)彈出層文本框不能輸入的問(wèn)題,需要的朋友可以參考下2017-06-06一文詳解如何檢測(cè)并解決JS代碼中的死循環(huán)
這篇文章主要想和大家來(lái)一起探討一下能否通過(guò)靜態(tài)分析的方式檢測(cè)出死循環(huán),如果不能,我們又應(yīng)該如何在不借用其他線程的情況下,解決死循環(huán)卡住問(wèn)題,感興趣的可以了解下2023-09-09