Javascript 如何使Backspace仅删除计算器中的最后一个字母?

Javascript 如何使Backspace仅删除计算器中的最后一个字母?,javascript,switch-statement,Javascript,Switch Statement,我试过几次,但我真的不知道我在做什么。因此,我希望我的退格删除计算中的最后一个输入 我已经为其他键执行了此操作: $("body").keypress(function (event) { let key = event.which; let value = ""; console.log(event.which); switch (key) { case 49: value = $("#display").val();

我试过几次,但我真的不知道我在做什么。因此,我希望我的退格删除计算中的最后一个输入

我已经为其他键执行了此操作:

$("body").keypress(function (event) {
    let key = event.which;
    let value = "";
    console.log(event.which);

    switch (key) {
        case 49:
            value = $("#display").val();
            $("#display").val(value += '1');
            console.log("one");
            break;
        case 50:
            value = $("#display").val();
            $("#display").val(value += '2');
            console.log("two");
            break;
我试着这样做是为了退格,但似乎是错的

    $("body").keydown(function (event) {
        let key = event.which;
        let value = "";
        console.log(event.which);

        var Key = event.keydown;
        switch (Key) {
            case 8:
                document.getElementById("d").value = value.length - 1;
                console.log("backspace");


        }
    });

您可以使用
slice()


您可以使用
slice()

$("body").keydown(function (event) {
        let key = event.which;
        let value = "";
        let realVal = document.getElementById("d").value
        console.log(event.which);

        var Key = event.keydown;
        switch (Key) {
            case 8:
                document.getElementById("d").value = realVal.slice(0,realVal.length -1)
                console.log("backspace");


        }
    });