SOURCE

console 命令行工具 X clear

                    
>
console
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <title>手机计算器</title>
    <style>
        *{margin:0;padding:0;box-sizing:border-box;font-family:system-ui}
        body{background:#1c1c1c;padding:16px;}
        .calc{max-width:420px;margin:0 auto;}
        .screen{color:#fff;font-size:48px;text-align:right;padding:24px 12px;min-height:120px;word-break:break-all;}
        .row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px;}
        button{height:72px;border:none;border-radius:99px;font-size:24px;cursor:pointer;}
        .num{background:#333;color:#fff;}
        .op{background:#ff9f0a;color:#fff;}
        .func{background:#a5a5a5;color:#000;}
    </style>
</head>
<body>
<div class="calc">
    <div class="screen" id="screen">0</div>
    <div class="row">
        <button class="func" onclick="clearAll()">AC</button>
        <button class="func" onclick="backspace()">⌫</button>
        <button class="func" onclick="append('%')">%</button>
        <button class="op" onclick="append('/')">÷</button>
    </div>
    <div class="row">
        <button class="num" onclick="append('7')">7</button>
        <button class="num" onclick="append('8')">8</button>
        <button class="num" onclick="append('9')">9</button>
        <button class="op" onclick="append('*')">×</button>
    </div>
    <div class="row">
        <button class="num" onclick="append('4')">4</button>
        <button class="num" onclick="append('5')">5</button>
        <button class="num" onclick="append('6')">6</button>
        <button class="op" onclick="append('-')">−</button>
    </div>
    <div class="row">
        <button class="num" onclick="append('1')">1</button>
        <button class="num" onclick="append('2')">2</button>
        <button class="num" onclick="append('3')">3</button>
        <button class="op" onclick="append('+')">+</button>
    </div>
    <div class="row">
        <button class="num" style="grid-column:span 2" onclick="append('0')">0</button>
        <button class="num" onclick="append('.')">.</button>
        <button class="op" onclick="calcEqual()">=</button>
    </div>
</div>

<script>
let inputStr = "";
const screen = document.getElementById('screen');

function append(val){
    // 替换 × ÷ 为js识别符号
    if(val === '×') val = '*';
    if(val === '÷') val = '/';
    inputStr += val;
    updateScreen();
}

function updateScreen(){
    let showText = inputStr.replaceAll('*','×').replaceAll('/','÷');
    screen.innerText = showText || "0";
}

function clearAll(){
    inputStr = "";
    updateScreen();
}

function backspace(){
    inputStr = inputStr.slice(0,-1);
    updateScreen();
}

function calcEqual(){
    try{
        let res = eval(inputStr);
        // 小数太长简化
        if(!isFinite(res)) throw "err";
        inputStr = String(res);
        updateScreen();
    }catch(e){
        screen.innerText = "错误";
        inputStr = "";
    }
}
</script>
</body>
</html>