关于#javascript#的问题:javascript需求:1.弹窗显示(1.添加学生2.删除学生3.显示学生列表4.按年龄排序0.退出.)按照用户输入执行相应的操作

javascript
需求:
1.弹窗显示(1.添加学生2.删除学生3.显示学生列表4.按年龄排序0.退出.)
按照用户输入执行相应的操作。


let student = [{
                id: 1,
                name: '小燕子',
                age: 18
            }, {
                id: 2,
                name: '五阿哥',
                age: 25
            }, {
                id: 3,
                name: '紫薇',
                age: 17
            }, {
                id: 4,
                name: '尔康',
                age: 21
            }]

题主要实现的功能代码如下。有帮助麻烦点个采纳【本回答右上角】,谢谢~~有其他问题可以继续交流~

<script>

    let student = [{
        id: 1,
        name: '小燕子',
        age: 18
    }, {
        id: 2,
        name: '五阿哥',
        age: 25
    }, {
        id: 3,
        name: '紫薇',
        age: 17
    }, {
        id: 4,
        name: '尔康',
        age: 21
        }]
    while (true) {
        var cmd = prompt('1.添加学生\n2.删除学生\n3.显示学生列表\n4.按年龄排序\n0.退出');
        if (cmd == '0') break;
        switch (cmd) {
            case '1':
                var id = parseInt(prompt('请输入学生Id')) || 0;
                while (true) {
                    if (id!=0&& student.findIndex(i => i.id == id) == -1) break;
                    else id = parseInt(prompt('学生Id:' + id + '已存在或不是数字,请重新输入!')) || 0;
                }
                var item = { id: id };
                item.name = prompt('请输入学生姓名');
                item.age = parseInt(prompt('请输入学生年龄')) || 0;
                student.push(item);
                break;
            case '2':
                var id = prompt('请输入学生Id')
                var index = student.findIndex(i => i.id == id);
                if (index == -1) { alert('找不到学生Id为' + id + '的记录!'); }
                else student.splice(index, 1);
                break;
            case '3':
                alert(JSON.stringify(student, null, 4));
                break;
            case '4':
                student.sort((a, b) => { return a.age - b.age; });//降序改为b.age-a.age
                break;

            case '0':
                break;
            default: alert('命令' + cmd + '不存在!');

        }
    }
</script>

这个主要是结合弹出框还有JS的对象数组来完成