用微信小程序?qū)崿F(xiàn)計(jì)算器功能
更新時(shí)間:2021年07月19日 10:10:46 作者:Honey-回憶天明
這篇文章主要為大家詳細(xì)介紹了用微信小程序?qū)崿F(xiàn)計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文是用微信小程序?qū)懙囊粋€(gè)簡(jiǎn)單的計(jì)算器,有興趣的小伙伴可以了解一下。
頁面部分
<view class='box'> <view class='txt'>{{screenNum}}</view> <view capture-bind:touchstart="compute"> <view> <button data-val='clear' class='boxtn btn1'>AC</button> <button data-val='back' class='boxtn btn1'>←</button> <button data-val='#' class='boxtn btn1'>#</button> <button data-val='/' class='boxtn btn'>/</button> </view> <view> <button data-val='7' class='boxtn'>7</button> <button data-val='8' class='boxtn'>8</button> <button data-val='9' class='boxtn'>9</button> <button data-val='*' class='boxtn btn'>*</button> </view> <view> <button data-val='4' class='boxtn'>4</button> <button data-val='5' class='boxtn'>5</button> <button data-val='6' class='boxtn'>6</button> <button data-val='-' class='boxtn btn'>-</button> </view> <view> <button data-val='1' class='boxtn'>1</button> <button data-val='2' class='boxtn'>2</button> <button data-val='3' class='boxtn'>3</button> <button data-val='+' class='boxtn btn'>+</button> </view> <view> <button data-val='1' class='boxtn btn2'>0</button> <button data-val='.' class='boxtn'>.</button> <button data-val='=' class='boxtn btn'>=</button> </view> </view> </view>
樣式部分
.box{ width:100%; height: 700px; background: #000; } .txt{ color: #fff; width: 100%; height:120px; font-size: 50px; text-align: right; } .boxtn{ width: 90px; height:90px; display:block; float:left; border-radius: 50%; line-height: 90px; text-align: center; margin-left: 3px; margin-top: 5px; color:#fff; background: #333333; font-weight: bold; font-size: 25px; } .btn{ background: #f09a37; } .btn1{ background: #a5a5a5; color:#000; } .btn2{ width: 180px; border-radius: 40px; }
js部分
//index.js //獲取應(yīng)用實(shí)例 const app = getApp() Page({ /** * 頁面的初始數(shù)據(jù) */ data: { screenNum: 0,//屏幕顯示的數(shù) currentNum: '',//當(dāng)前輸入的數(shù) storage: 0,//存儲(chǔ)的數(shù) operator: '',//運(yùn)算符 off: false, }, compute: function (e) { var btn_num = e.target.dataset.val; var obj = this; if (!isNaN(btn_num)) { if (obj.data.off == true) { obj.data.currentNum = '' obj.data.off = false; } obj.data.currentNum += btn_num obj.data.currentNum = Number(obj.data.currentNum); obj.data.currentNum = obj.data.currentNum.toString(); } else { switch (btn_num) { case '+': case '-': case '*': case '/': case '=': // 將當(dāng)前屏幕上的數(shù)字和本次的操作符存儲(chǔ)到變量 if (obj.data.storage == 0) { obj.data.storage = obj.data.currentNum; obj.data.operator = btn_num; } else { if (obj.data.off != true) { if (obj.data.operator == '+') { obj.data.currentNum = Number(obj.data.storage) + Number(obj.data.currentNum) } else if (obj.data.operator == '-') { obj.data.currentNum = Number(obj.data.storage) - Number(obj.data.currentNum) } else if (obj.data.operator == '*') { obj.data.currentNum = Number(obj.data.storage) * Number(obj.data.currentNum) } else if (obj.data.operator == '/') { obj.data.currentNum = Number(obj.data.storage) / Number(obj.data.currentNum) } } obj.data.storage = obj.data.currentNum; obj.data.operator = btn_num; } obj.data.off = true; break; case 'clear': obj.data.storage = 0; obj.data.currentNum = '0'; obj.data.operator = ''; break; case 'back': obj.data.currentNum = obj.data.currentNum.slice(0, -1); if (obj.data.currentNum == '') { obj.data.currentNum = '0'; } break; case '.': if (obj.data.currentNum.indexOf('.') == -1) { // 判斷是否已包含“.” obj.data.currentNum += btn_num } break; } } obj.setData({ screenNum: obj.data.currentNum }) }, })
效果圖如下
微信開發(fā)者工具下載地址
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
相關(guān)文章
onmouseover事件和onmouseout事件全面理解
最近兩天在溫習(xí)onmouseover事件和onmouseout事件,其實(shí)里面有很多深?yuàn)W的知識(shí),接下來小編給大家?guī)砹薿nmouseover事件和onmouseout事件全面了解,感興趣的朋友一起看下2016-08-08JavaScript比較同一天的時(shí)間大小實(shí)例代碼
在項(xiàng)目開發(fā)中,經(jīng)常會(huì)遇到同一天內(nèi)的時(shí)間大小比較,下面小編給大家?guī)砹薐avaScript比較同一天的時(shí)間大小實(shí)例代碼,需要的朋友參考下2018-02-02用JavaScript獲取頁面文檔內(nèi)容的實(shí)現(xiàn)代碼
下面小編就為大家?guī)硪黄肑avaScript獲取頁面文檔內(nèi)容的實(shí)現(xiàn)代碼。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-06-06JS實(shí)現(xiàn)根據(jù)指定值刪除數(shù)組中的元素操作示例
這篇文章主要介紹了JS實(shí)現(xiàn)根據(jù)指定值刪除數(shù)組中的元素操作,結(jié)合實(shí)例形式總結(jié)分析了JavaScript針對(duì)數(shù)組元素刪除操作的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-08-08JavaScript可折疊區(qū)域?qū)崿F(xiàn)代碼
可折疊區(qū)域的基本思想:通過點(diǎn)擊某個(gè)地方來顯示或隱藏屏幕中的某個(gè)區(qū)域。2010-10-10