一元运算在前在后的区别
加加
var num1 = 10;
//++在后面 先参与运算 再自加1
var sum1 = num1++ +10;
console.log("sum1的值:"+sum1);//
console.log("num1的值:"+num1);//11 var num2 = 10;
var sum2 = ++num2 + 10;
//++在前面 先自身加1 再参与运算
console.log("sum2的值:"+sum2)//21
console.log("num2的值:"+num2)//11
减减
var num1 = 10;
//--在后面 先参与运算 再自减1
var sum1 = num1-- +10;
console.log("sum1的值:"+sum1);//
console.log("num1的值:"+num1);//
var num2 = 10;
//--在前面 先减1 再参与运算
var sum2 = --num2 + 10;
console.log("sum2的值:"+sum2);//
console.log("num2的值"+num2);//
判断是否闰年
//普通闰年:能被4整除但不能被100整除的年份为普通闰年。(如2004年就是闰年,1999年不是闰年);
//世纪闰年:能被400整除的为世纪闰年。(如2000年是闰年,1900年不是闰年);
var year = 2000;
if(year%4==0&&year%100!=0||year%400==0){
console.log("闰年")
}
else{
console.log("平年")
}
计算利率
//存入银行本金10000,年利率是千分之三,
//将本金和利息相加做新的本金,计算5年后
//获得的本金是多少
var money = 10000;//本金
var rate =0.003//千分之三
for(var i=0;i<5;i++){
//money=money+money*rate;
money+=money*rate;
}
//parseInt()取整
console.log(parseInt(money
斐波那契数列
// 有个人想知道,一年之内一对兔子能繁殖多少对?于是就筑了
// 一道围墙把一对兔子关在里面。已知一对兔子每个月可以生一
// 对小兔子,而一对兔子从出生后第3个月起每月生一对小兔子。
// 假如一年内没有发生死亡现象,那么,一对兔子一年内(12个月)
// 能繁殖成多少对?(兔子的规律为数列,1,1,2,3,5,8,13,21) var numM1 = 1;//第一个月
var numM2 = 1;//第二个月
var sumM1 = 0;//第三个月
for(var i=3;i<=12;i++){
sumM1=numM1+numM2;//第三个月的
numM1=numM2;//第二个月的等于numM2
numM2=sumM1;//第三个月的等于sumM1
//....以此类推
}
console.log(sumM1)//144
break关键字:如果在循环中使用,遇到break,则跳出当前所在循环
//找出100~200之间第一个能被7整除的数,结束循环
for(var i=100;i<=200;i++){
if(i%7==0){
console.log("找了是哪个数"+i)
break;//退出循环
}
}
continue:在循环中如果遇到continue关键字,直接开始下一次循环
//求200-300之间所有的奇数的和(用continue)
var sum=0;
var i=200;
while(i<=300){
//如果被2整除的数
if(i%2==0){
//自身加1,continue执行下一次循环
i++;
continue;
}
sum+=i;
i++;
}
console.log(sum);//
求整数1~100的累加值,但要求跳过所有个位为3的数
var sum=0;
var i=1;
while(i<=100){
//如果个位数为3的跳过
if(i%10==3){
i++;
continue;
}
sum+=i;
i++;
}
console.log(sum)//
console.log(13%10==3)//true
求一组数组的最大值和总和以及平均值
var arr=[10,20,30,40,50];
var sum=0;
//求总和
for(var i=0;i<arr.length;i++){
sum+=arr[i]
}
console.log(sum);//
console.log(sum/arr.length)//30
//求最大值
var max=arr[0];
for(var i=0;i<arr.length;i++){
if(max<arr[i]){
max=arr[i]
}
}
console.log(max)//
求最小值
//求最小值
var myArray = new Array();
myArray = [10,20,30,40,50,60,70,80,90,100];
//预设数组中某值为最大值
var maxNum =myArray[0];
//循环遍历
for(var i=0;i<myArray.length;i++){
//判断
if(maxNum>myArray[i]){
maxNum=myArray[i]
}
}
console.log(maxNum)//
倒序遍历
//倒序遍历
var myArray =[10,20,30,40,50,60,70,80,90,100];
for(var i=myArray.length-1;i>=0;i--){
console.log(myArray[i]);
}
//100,90,80,70,60,50,40,30,20,10
把数组的每个元素用|拼接到一起
//把数组中的每个元素用|拼接到一起
var names = ["卡卡西","黑崎一护","凤姐","数组","马丁路德金"]
var str="";
for(var i=0;i<names.length-1;i++){
str+= names[i]+"|"
}
console.log(str+names[names.length-1]);
//卡卡西|黑崎一护|凤姐|数组|马丁路德金
去掉数组中重复的0,把其他的数据放在一个新的数组中
//去掉数组中重复的0,把其他的数据放在一个新的数组中
var arr= [10,0,20,0,30,0,50];
var newArr=[];//创建新的数组存储所有非0的数字
for(var i=0;i<arr.length;i++){
if(arr[i]!=0){
//newArr索引为0 数字放入 长度改变
newArr[newArr.length]=arr[i];
}
}
//把新数组的长度作为下标使用,数组的长度是可以改变的
console.log(newArr)//(4) [10, 20, 30, 50]
反转数组--把数组中的数据的位置调换
//反转数组--把数组中的数据的位置调换
var arr=[10,20,30,40,50,60,70];
//循环的目的是控制交换的次数
for(var i=0;i<arr.length/2;i++){
//先把第一个元素的值放在第三方变量中
var temp=arr[i];
//将第一个元素和最后一个数交换
arr[i]=arr[arr.length-1-i];
arr[arr.length-1-i]=temp;
}
console.log(arr)
var myArray = [20,30,40,50,60,70,80,90,100,110,120,130,140,150,160];
//控制交换的次数
for(var i=0;i<myArray.length/2;i++){
//将第一个元素的值放在第三方变量
var tem = myArray[i];
//将数组最后一个元素的值赋给第一个元素
myArray[i]=myArray[myArray.length-1-i];
//将第三方变量的值赋给数组最后一个元素
//完成交换
myArray[myArray.length-1-i]=tem;
}
console.log(myArray);
提示用户输入班级人数,求总成绩,平均值,最高分,最低分
//prompt("弹出一个输入框 ")
var perCount = parseInt(prompt("请输入班级人数"));
var perArray=[];
for(var i=0;i<perCount;i++){
perArray[perArray.length]=parseInt(prompt("请输入第"+(i+1)+"个人的成绩")) }
console.log(perArray)
var str=0;
for(var i=0;i<perArray.length;i++){
str+=perArray[i];
}
console.log("总成绩:"+str);
console.log("平均成绩为:"+str/perCount)
var avg=perArray[0]
for(var i=0;i<perCount;i++){
//判断大于则赋值
if(avg<perArray[i]){
avg=perArray[i];
}
}
console.log("最高分:"+avg) var avg2=perArray[0]
for(var i=0;i<perCount;i++){
//判断小于则赋值
if(avg2>perArray[i]){
avg2=perArray[i];
}
}
console.log("最低分:"+avg2)
冒泡排序
//冒泡排序 树有数据按照一定的顺序进行排列(从小到大,从大到下)
var arr=[100,10,0,50,60,40,90];
//控制比较的轮数
for(var i=0;i<arr.length-1;i++){
//控制每一轮对比的次数
for(var j=0; j<arr.length-1-i;j++){
//如果前者大于后者的就往后面排
if(arr[j]>arr[j+1]){
//交换变量
tem=arr[j];
arr[j]=arr[j+1];
arr[j+1]=tem;
}
}
}
console.log(arr)//(7) [0, 10, 40, 50, 60, 90, 100]
第二天有点久啊 -_-