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的对象数组来完成