why my final result doesn’t show in input tag?

$(document).ready(function () {

    let newData = "";
    let num1 = 0;
    let result = 0;
    let operation = null;
    let input = $("div.calc-display input");

    // زمانی که یک عدد کلیک می‌شود
    $(".calc-number-item").click(function () {
        let data = this.innerText;
        newData += data;
        input.val(newData);
    });

    // زمانی که یک عملگر کلیک می‌شود
    $(".calc-operand-item").click(function () {
        num1 = Number(input.val());
        operation = $(this).attr('id');
        input.val("");
        newData = "";
    });

    // زمانی که دکمه مساوی کلیک می‌شود
    $(".equal").click(function () {
        let num2 = Number(input.val());
        if (operation) {
            switch (operation) {
                case 'plus':
                    result = plus(num1,num2);
                    break;
                case 'mines':
                    result = mines(num1,num2);
                    break;
                case 'times':
                    result = times(num1,num2);
                    break;
                case 'devide':
                    result = devide(num1,num2);
                    break;
                default:
                    result = "Error";
            }
            input.val(result);  // نمایش نتیجه در فیلد ورودی
            newData = "";       // ریست کردن newData برای عملیات جدید
            operation = null;   // ریست کردن عملیات برای جلوگیری از مشکلات بعدی
        }
    });

    // توابع ریاضی
    function plus(a,b) {
        return a + b;
    }

    function mines(a,b) {
        return a - b;
    }

    function times(a,b) {
        return a * b;
    }

    function devide(a,b) {
        return a / b;
    }

});

in view of math everything is fine.
but my code doesn’t run correctly.