首页 技术 正文
技术 2022年11月23日
0 收藏 336 点赞 3,332 浏览 3646 个字

1、基本概念:
①对象:对象是拥有一系列无序属性和方法的集合。
②键值对:对象中的数据是以键值对的形式存在,对象的每个属性和方法,都对应值一个键名,以键取值。
③属性:描述对象特征的一系列变量称为属性。【对象中的变量】
④方法:描述对象行为的一系列函数称为方法。【对象中的函数】

2、声明对象:
①使用自变量声明: var obj ={
key1 :value1,
key1 :value1,
func1 =function(){}
}
>>>对象中的数据是以键值对形式存储,键与值之间用:分隔。多个键值对之间用,分隔。
>>>对象中的键,可以是除了数组/对象意外的任何数据类型,但是一般我们只用普通变量名作为键。
>>>对象中的值,可以是任何数据类型,包括数组和对象。
②使用new关键字声明:var obj =new Object();
obj.key1 =value1;
obj.func1= function(){}

3、对象中属性和方法的读写:
①.运算符:
对象内部:this.属性 this.方法()
对象外部: 对象名.属性 对象名.方法();
②通过[“key”]调用:对象名.[“属性名”] 对象名.[“方法名”]();

>>>如果键中包含特殊字符,只能使用第二种方式。
>>>对象中,直接写变量名,默认为调用全局变量。如果需要调用对象自身的属性或者方法。需要使用对象名,属性或者this.属性。
person.age this.age 都可以,但是推荐使用this关键字。
③删除对象的属性和方法: delete 对象名.属性名/方法名
delete person.age;

一组数按绝对值升序

var arr =[12,123,-1234,2,34.56,-789]

arr.sort(function(a,b){
a=a>0?a%10 :(0-a)%10;
b=b>0?b%10 :(0-b)%10;
return a-b;
})

console.log(arr)

编写一个程序打印1、展示学员信息 。2、学员信息录入。3、删除学员信息。4、查询学员信息。5、修改学员信息。6、退出系统

var classes = {
className : “HTML5-1705”,
studentCount : 27,
students : [
{name:”张三”,sex:”女”,chinese:0,maths:0,english:0,sum:0},
{name:”李四”,sex:”女”,chinese:20,maths:30,english:40,sum:90},
{name:”王五”,sex:”男”,chinese:9,maths:8,english:7,sum:24}
],
addStudent : function(){
var name = prompt(“请输入学员姓名:”);
var sex = prompt(“请输入学员性别:”);
var chinese = parseFloat(prompt(“请输入学员语文成绩:”));
var maths = parseFloat(prompt(“请输入学员数学成绩:”));
var english = parseFloat(prompt(“请输入学员英语成绩:”));
var sum = chinese + maths + english;
var student = {
name : name,
sex : sex,
chinese : chinese,
maths : maths,
english : english,
sum : sum
}
this.students.push(student);
this.students.sort(function(a,b){
return b.sum – a.sum;
});
},
showStudent : function(){
var arr = this.students;
console.log(“\t杰瑞教育HTML5-1705班成绩展示”);
console.log(“序号\t姓名\t性别\t语文\t数学\t英语\t总分”);
arr.sort(function(a,b){
return b.sum – a.sum;
});
arr.forEach(function(item,index){
console.log((index+1)+”\t\t”+item.name+”\t”+item.sex+”\t\t”+item.chinese+”\t\t”+item.maths+”\t\t”+item.english+”\t\t”+item.sum);
})
},
delStudent : function(){
if(this.students.length<=0) {
alert(“没有学员数据,无法删除!”);
return;
}
var no = prompt(“请输入要删除的学员序号:”);
if(no<1 || no> this.students.length){
alert(“序号输入有误!请确认学员序号重新输入!”);
return;
}
this.students.splice(no-1,1);
},
searchStudent : function(){
var no = prompt(“请输入要查询的学员序号:”);
var arr = this.students;
if(no<1 || no > arr.length){
alert(“查无此人!请确认序号!”);
}else{
console.log(“查询完成!查询到学员信息如下:”);
console.log(“序号\t姓名\t性别\t语文\t数学\t英语\t总分”);
console.log(no+”\t\t”+arr[no-1].name+”\t”+arr[no-1].sex+”\t\t”+arr[no-1].chinese+”\t\t”+arr[no-1].maths+”\t\t”+arr[no-1].english+”\t\t”+arr[no-1].sum);
}
},
updateStudent : function(){
if(this.students.length<=0) {
alert(“没有学员数据,无法修改!”);
return;
}
var no = prompt(“请输入要修改的学员序号:”);
if(no<1 || no> this.students.length){
alert(“序号输入有误!请确认学员序号重新输入!”);
return;
}
if(!confirm(“您确认修改学员是【”+this.students[no-1].name+”】吗?”)){
alert(“操作已取消!”);
return;
}
var name = prompt(“请输入学员姓名:”);
var sex = prompt(“请输入学员性别:”);
var chinese = parseFloat(prompt(“请输入学员语文成绩:”));
var maths = parseFloat(prompt(“请输入学员数学成绩:”));
var english = parseFloat(prompt(“请输入学员英语成绩:”));
var sum = chinese + maths + english;
var student = {
name : name,
sex : sex,
chinese : chinese,
maths : maths,
english : english,
sum : sum
}
this.students[no-1] = student;
}
}

console.log(“\t杰瑞教育成绩管理系统”);
console.log(“1、展示学员信息\t2、学员信息录入\n3、删除学员信息\t4、查询学员信息\n5、修改学员信息\t6、退出系统”);
while (true){
var num = parseInt(prompt(“请输入操作序号”));
var is = false;
switch (num){
case 1:
classes.showStudent();
break;
case 2:
classes.addStudent();
console.log(“信息录入成功!”);
classes.showStudent();
break;
case 3:
classes.delStudent();
console.log(“信息删除成功!”);
classes.showStudent();
break;
case 4:
classes.searchStudent();
break;
case 5:
classes.updateStudent();
console.log(“信息修改成功!”);
classes.showStudent();
break;
case 6:
console.log(“系统退出成功!”);
is = true;
break;
default:
alert(“序号输入有误!”);
break;
}
if(is) break;

console.log(“是否继续?(输入N退出系统)”);
var isGo = prompt(“请输入序号:N退出系统,其他字符继续”);
if(isGo == “N” || isGo == “n”){
console.log(“系统退出成功!”);
break;
}

}

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,996
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,510
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,353
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,137
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,770
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,848