day01关于JavaScript 基础的一些小案例整理(多种方法解题)

好久没有更新了,说实话也是学的内容确实不算少,而且兄弟我又是个卷派,凡事都想学快一点,以至于没有时间更新,最近几天,我会陆续整理一些小案例,供大家练练手,每种题都是好几种写法哦

对于新手超级友好!!!

毕竟我也是新手嘛!!!

话不多说,上干货!

案例1;用户输入提示框 输入出生年份 文档打印多少岁! (3种写法)

这道题,整理了三种写法,题目很简单,三种写法主要是为了让大家熟悉一下各个方法的不同,程序员多敲敲嘛,敲多了,就都会了! 

分别是:

1、最常规的弹窗

2、加入了对于用户输入的内容是否是数字的判断条件,同时用while 循环 直到输入直到输入正确

3、isNaN  + while

    // 方法一  最简单常规理想状态
    var year = prompt('请输入年份:');
    age = 2022 - year;
    alert('你已经' + age + '岁了');


    // 方法二  复杂一点
    var flag = true;
    while (flag) {
        var year = +prompt('请您输入您的出生年份') // 前面写个 +  是把字符强制转成数字型
        if (typeof year === 'number') {
            var age = 2022 - year; // year 取过来的是字符串型  但是这里用的减法 有隐式转换
            alert('您今年已经' + age + '岁了');
            flag = false;
        } else {
            alert('请输入正确的数字类型');
            continue;
        }
    }

    // 方法三  用的isNaN
    var year = prompt('请您输入您的出生年份');
    var flag = isNaN(year);
    while (flag) {
        alert('请输入正确的数字类型');
        year = prompt('请您输入您的出生年份');

    }
    alert('您年龄是:' + (2022 - year));

案例二:弹出两次输入框(prompt)计算两次的和!

这个就是常规操作,两次取值,加上 数字的隐式转换   因为prompt 接收的数据类型是字符串,所以需要隐式转换!

    var num = prompt('请输入第一个值');
    var num1 = prompt('请输入第二个值');
    num = num - 0;
    num1 = num1 - 0;
    alert('两个数的和为' + parseFloat(num + num1))

案例三:【难度★★★★】如果今天是星期六,那么1000天是星期几?(4种写法)

1、正常的取 模运算

2、switch 分类讨论 ,虽然长了点,不过思路很清晰,比较容易理解

3、三元表达式书写

4、简单数字类

    // 方法一  默认今天是第一天  直接取余 
    var num = 1000 % 7 - 1;
    console.log('是的星期' + num + '啊');
    // 方法二  升级版  虽然有点长,不过思路很简单
    var time = prompt('今天是周六,你想知道多少天后是星期几吗?')
    time = time - 0;
    var time = time % 7;
    switch (time) {
        case 0:
            alert('星期六');
            break;
        case 1:
            alert('星期日');
            break;
        case 2:
            alert('星期一');
            break;
        case 3:
            alert('星期二');
            break;
        case 4:
            alert('星期三');
            break;
        case 5:
            alert('星期四');
            break;
          default:
            alert('星期五');
    }
    // 方法三  三元表达式
    var newTime = +prompt('请输入您要查询的日期(可以显示星期几):')
    var num = newTime % 7  // 必须得加一个结果 不然alert  没法调用结果
    var re = newTime % 7 < 3 ? num + 5 : num - 2;
    alert(newTime + '号是星期' + re)

    // 方法四   简单数字类
    var newTime = +prompt('请输入您要查询的日期(可以显示星期几):')
    var num = newTime % 7;
    if (num < 6) {
        alert(newTime + '号是星期' + (num + 2))
    } else {
        alert(newTime + '号是星期' + (num - 5))
    }   

案例四:

【难度★★★★★】用户输入一个三位数,用程序计算三位数字的和(两种方式实现)。

    // 比如:    

    // 用户输入155,就弹出11

    // 用户输入316,就弹出10

    // 用户输入989,就弹出26

    // 用户输入678,就弹出21

    // 注意:用户输入数字的有效性、合法性不用考虑。比如,如果用户输入34343、“我爱你”,这种情况我们不要去考虑,你就想像,用户会非常乖,一定会输入3位数的。这是因为我们没有学习if语句。

这个题目主要是得理清楚思路,这里整理了两种写法

核心在于,怎么把 个位、十位、百位 上的数分别取出来?

    alert('方法一')
    var num5 = prompt('请输入一个三位数')

    num.substring

    var num6 = num5[0] - 0;
    var num7 = num5[1] - 0;
    var num8 = num5[2] - 0;
    var num9 = num8 + num6 + num7;
    alert('三位数相加等于' + num9);


    alert('方法二')
    var num5 = prompt('请输入一个三位数')
    var num5 = num5 - 0;
    var num6 = num5 % 10;//个位数           3
    var num7 = num5 % 100;
    num7 = parseInt(num7 / 10);//十位数      2.3  2       
    var num8 = parseInt(num5 / 100);//百位数
    var num9 = num8 + num6 + num7;
    alert('个位数:' + num6);
    alert('十位数:' + num7);
    alert('百位数:' + num8);
    alert('三位数相加等于' + num9);

案例五:  这个题整理了3种写法  分别是基础班、升级版、和工作版

    // ###1- 判断时间阶段。

    // - 题目描述:

    //      用户输入几点弹出问候信息;

    //      如用户输入12点中午好;

    //      用户输入18点 弹出傍晚好;

    //   ​  用户输入23点弹出深夜好;

    // 方法一  硬性的几个答案
    var time = prompt('请输入时间点:')
    if (time == 12 || time == '12点') {
        alert('中午好!')
    } else if (time == 18 || time == '18点') {
        alert('傍晚好!')
    } else if (time == 24 || time == '24点') {
        alert('晚上好!')
    }

    // 方法二  输入时间段问好

    var now = +prompt('请输入时间点:')
    if (now > 0 && now <= 6) {
        alert('午夜好!')
    } else if (now > 6 && now <= 11) {
        alert('早上好!')
    } else if (now > 11 && now <= 14) {
        alert('中午好!')
    } else if (now > 14 && now <= 18) {
        alert('下午好!')
    } else {
        alert("晚上好!");
    }


    // 方法三  实时时间问好。访问现在电脑时间,跳出信息框,大网站基本上都有这种定点提示框
    var now = (new Date()).getHours();
    if (now > 0 && now <= 6) {
        alert('午夜好!')
    } else if (now > 6 && now <= 11) {
        alert('早上好!')
    } else if (now > 11 && now <= 14) {
        alert('中午好!')
    } else if (now > 14 && now <= 18) {
        alert('下午好!')
    } else {
        alert("晚上好!");
    }

今天就整理出来呢5个案例,如果对您有用的话,记得点个赞哦!

接下来还会更新各种实用小案例供大家参考练习,还有各种各样的解法,记得收藏一下哦!

谢谢谢谢~~~你~您~您~嘞~~

猜你喜欢

转载自blog.csdn.net/fightingLKP/article/details/124069800