1,创建一个对象,该对象存储一个学生的信息,该对1,象包含学号、身份证、年龄、性别、所学专业等属性信息,同时该对象包含一个自我介绍的方法,用来输出该对象的所有信息
var student = {
uname: 'quqing',
num: 110,
idcode: 43555,
age: 34,
sex: '男',
zhuangye: 'h5',
decoration: function () {
return "我的名字叫:" + this.uname + ",是一个" + this.sex + ",我今年" + this.age + "岁,我的专业是:" + this.zhuangye;
}
}
console.log(student.decoration());
2.定义一个含有10个元素的数组,任意输入一个数,判断这个数在数组中是否存在,如果存在,就删除这个数.
var arr = [452, 5, 4, 6, 6, 6, 6, 63, 76, 6, 43, 76];
function deleteNum(arr, num) {
for (var i = 0; i < arr.length; i++) {//遍历数组
if (arr[i] === num) {//判断Num是否存在在数组当中
arr.splice(i, 1);//删除这个元素
i--;//删除元素后,长度变短,所以要返回上一次继续循环
}
}
return arr;
}
deleteNum(arr, 6);
console.log(arr);
3.输入若干个成绩存入到数组中,输入负数后退出。 统计数组平均成绩,输出低于平均成绩的分数并统计低于平均成绩的学生个数
function jisuanScore() {
//获取成绩
var score;
scoreArr = [];//用来保存成绩
totalScore=0;//用来保存总成绩
count=0;
while (true) {
score = Number(prompt("输入成绩"));
if (!isNaN(score)) {//数字
if (score < 0) {
break;//退出
} else if (score > 100) {
alert("成绩不在范围,请重新输入")
} else {
scoreArr.push(score);
}
} else {
alert("输入有误,请重新输入")
}
}
//计算平均成绩
var avgScore=totalScore/scoreArr.length;
for(var i=0;i<scoreArr.length;i++){
console.log(scoreArr[i]);
count++;
}
console.log(scoreArr,totalScore,count);
}
jisuanScore();
4.定义一个含有30个整型元素的数组,按顺序分别赋予从2开始的偶数;然后按顺序每五个数求出一个平均值,放在另一个数组中并输出。试编程。
function test() {
//获取数组
var index = 2;
var evenNumber = [];
var count = 0;
var sum = 0;
var avgArr = [];
while (index <= 60) {
evenNumber.push(index);
count++;
sum += index;
if (count === 5) {
//console.log(sum/5);
avgArr.push(sum / 5);
sum = 0;//每一次sum要从0开始计算
count = 0;
}
index += 2;
}
console.log(avgArr);
} test();
5. 随机生成一个五位以内的数,然后输出该数共有多少位,每位分别是什么
function fn(){
var randNum=parseInt(Math.random()*10000);
console.log(randNum);
var arr=[];
var textArr=["个位是: ","十位是:","百位是:","千位是:"]
var count=0;
while(randNum){//0
arr.push(textArr[count]+randNum%10);
randNum=parseInt(randNum/10);//执行了几次循环,randNum就是几位数
count++;
}
console.log(count,arr);
}fn();
6. 编写函数map(arr) 把数组中的每一位数字都增加30%
var arr = [2, 3, 4, 5, 6]
function fn(arr) {
for (var i = 0; i < arr.length; i++) {
arr[i] *= 1.3;
}
} fn(arr);
console.log(arr);
7.有一个从小到大排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
// 例如 原数组 [3,10,49,89,100]
// 插入一个数 15
// 新数组为 [3,10,15,49,89,100]
// 思路 : 找到 要添加数的下标 a--在数组中的某个数据的位置上
// b-- 在数组中的最后添加 arr.length
var arr = [3, 10, 49, 89, 100];
function insertNum(arr, num) {
var index = arr.length;
//只要num遇到一个比他大的元素,就在当前位置插入
for (var i = 0; i < arr.length; i++) {
if (arr[i] > num) {
arr.splice(i, 0, num);//当前位置插入;
index = i;//保留插入位置的下标
break;//不需要在往下比较
}
}
arr.splice(index, 0, num);
}
insertNum(arr, 150)
console.log(arr);
8、 定义一个含有10个元素的数组 计算下标为奇数的元素的平均数(自定义函数实现)
var arr = [1, 23, 4, 5, 6, 7, 8, 9, 0,];
function fn(arr) {
var avg = 0;
var count = 0;
for (var i = 0; i < arr.length; i++) {
if (i % 2 != 0) {
avg += arr[i];//下标为奇数
count++;
}
} return avg / count;
}
console.log( fn(arr));
9、 某个公司采用公用电话传递数据,数据是四位的整数,在传递过程中是加密的,加密规则如下:
每位数字都加上5,然后用除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换,
请编写一个函数,传入原文,输出密文
function getPass(num) {
var passArr = [];
while (num) {
passArr.push((num%10 + 5) % 10);
num = parseInt(num / 10);//执行四次: 个 十 百 千
}
return Number(passArr.join(""));
}
var pass=getPass(4758);
console.log(pass);