如何获取一周中每一天的密码?

Posted

技术标签:

【中文标题】如何获取一周中每一天的密码?【英文标题】:How can I get a password for each day of the week? 【发布时间】:2022-01-10 14:26:15 【问题描述】:

我正在参加训练营招聘,其中一项练习是获取一周中每一天的密码。每周通行证总是相同的,但每天我必须将工作日的辅音附加到每周通行证。 这是我写的。

var weekDay = 'Friday';
var currentPass; // this is the values they gave me
switch (weekDay) 
    case (weekDay = 'monday'):
        console.log(currentPass = weeklyPass + 'mnd');
    break;
        case (weekDay = 'tuesday'):
            console.log(currentPass = weeklyPass + 'tsd');
    break;
        case (weekDay = 'wednesday'):
            console.log(currentPass = weeklyPass + 'wdnsd');
    break;
        case (weekDay = 'thursday'):
            console.log(currentPAss = weeklyPass + 'thrsd');
    break;    
        case (weekDay = 'friday'):
            console.log(currentPass = weeklyPass + 'frd');       
    break;
        case (weekDay = 'saturday'):
            console.log(currentPass = weeklyPass + 'strd');
    break;
        case (weeKday = 'sunday'):
            console.log(currentPass = weeklyPass + 'snd');
    break;
    ```

【问题讨论】:

1. = is assignment, not equality check. 2. 这不是switch should be written soooo ...你能帮帮我吗? 【参考方案1】:

解决此问题的更简单方法是使用Date#getDay() 获取一周内当天的0-6 索引,并将后缀存储在具有相同索引的数组中。

然后使用天索引来检索相关的后缀。

const suffixes = ['snd','mnd','tsd','wdnsd','thrsd','frd','strd']

const weekPass = 'ABC_';

const day = (new Date()).getDay();

const pass = weekPass + suffixes[day];

console.log('Day index =',day, ', Passs =',pass )

【讨论】:

这就是他们要求我做的事情:“获得存储在 weekPass 中的每周密码的值,根据我们所在的星期几更新并打印到控制台 currentPass 的值. 要知道是星期几,只需访问 weekDay. 记住,更新密码是在星期几的名称中附加与出现的辅音相对应的字母。破解这个问题的方法有很多,但 Elliot并且这些人特别要求您使用 switch 语句..." 正如上面 cmets 中提到的,您没有正确使用开关。还要注意大小写差异......“星期五”不等于“星期五”【参考方案2】:

或者只是这个

const currentPass = "aaa",
  weekDay = new Date().getDay(), // 0-6 (sun-mon)
  dayPass = currentPass + ['snd', 'mnd', 'tsd', 'wdnsd', 'thrsd', 'frd', 'strd'][weekDay];
  
  console.log(dayPass)

【讨论】:

这就是他们要求我做的事情:“获得存储在 weekPass 中的每周密码的值,根据我们所在的星期几更新并打印到控制台 currentPass 的值. 要知道是星期几,只需访问 weekDay. 记住,更新密码是在星期几的名称中附加与出现的辅音相对应的字母。破解这个问题的方法有很多,但 Elliot并且这些人特别要求您使用 switch 语句..."【参考方案3】:

考虑到您写的内容,使其正常工作的第一步是修复switch syntax 和currentPass 的分配,如下所示:

var weekDay = 'Friday';
var currentPass = "this_week_password"; // this is the values they gave me
switch (weekDay) 
    case 'Monday':
        currentPass += 'mnd';
            break;
    case 'Tuesday':
        currentPass += 'tsd';
            break;
    case 'Wednesday':
        currentPass += 'wdnsd';
            break;
    case 'Thursday':
        currentPass += 'thrsd';
            break;    
    case 'Friday':
        currentPass += 'frd';       
            break;
    case 'Saturday':
        currentPass += 'strd';
            break;
    case 'Sunday':
        currentPass += 'snd';
            break;
    

console.log(currentPass)

【讨论】:

我忘了说他们给了我这个值:var weekPass = 'darlene'; 所以只需将"this_week_password" 替换为weeklyPass 这就是说的:>>>>代码不正确想想你正在评估的值有哪些可能的情况,看看你是否没有遗漏一些。

以上是关于如何获取一周中每一天的密码?的主要内容,如果未能解决你的问题,请参考以下文章

如何在一周中的每一天的每一天中创建空条目

如何获取给定记录组中每一天的最后一条记录?

获取组中每一天的最后记录

Laravel 获取数组中每一天的最新数组项

遍历数据框并绘制每一列

如何修复此查询?