Failure is part of learning. we should never give up the struggle in life

js个别练习题及答案

保留三位小数

思路:
一个数字,直接保留三位小数
用parseInt()方法取到小数点
先把数字扩大1000倍
然后取整
之后在缩小1000倍

var a = 123.456789
var res = parseInt((a * 1000) / 1000)
console.log(res)

判断一个数是不是偶数

思路:
当一个数 /2时能整除时 则是偶数
当一个数 %2得到 0 的时候 表示整除 则是偶数

var n = 11
    if (n %2 == 0 ) {
        console.log('偶数')
    } else {
        console.log('奇数')
    }

//条件无==号版
var n = 11
    //从数字角度出发0是false 非0则全是true
    //所以条件得到true 则代表没有整除 得到奇数
    if (n % 2) {
        console.log('奇数')
    } else {
        console.log('偶数')
    }

判断数字是否在某个范围

思路:
//如判断n是否在15到20之间
//不可以写成 15 <= n <= 20 (数学写法)
//应该为 15 <= n && n <= 20

//数学写法
var n = 5
        if (15 <= n <= 20) {
            console.log('是个沙雕')
        }
        console.log('后续代码')
//在判断时虽然n是明显小于15的但第一次的判断值为false
//所以就变成了0与后面的20进行比较显然0是小于20的
//故会执行

//加上&&
var n = 5
        if (15 <= n && n <= 20) {
            console.log('是个沙雕')
        }
        console.log('后续代码')
//没有执行if中的输出

判断平年闰年

思路:
//年份被4整除
//整百年份不能被100整除
//整百年份可以被400整除

var n = 2000
        if (n % 4 || n % 400 && n % 100) {
            console.log('平年')
        } else {
            console.log('润年')
        }

根据月份在控制台输出对应天数

思路:
//利用switch中break的穿透特性
//相同天数的月份放在一起

var month = 9
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
console.log('31天')
break
case 4:
case 6:
case 11:
console.log('30天')
break
case 2:
console.log('28天')
}

循环计算1~10的和

思路:
//准备一个变量用来接收叠加结果
//准备一个循环的初始化变量

var sum = 0

var n = 1
while (n <= 10) {
sum = sum + n
n ++
}
console.log(sum)

阶乘

思路:
//倒着循环
//从10开始到一结束
//准备一个变量接收阶乘的结果
//准备一个循环的初始化变量

var and = 1

var n = 6
while (n >= 1) {
and = and * n
n--
}
console.log(and)

发表评论

电子邮件地址不会被公开。 必填项已用*标注