如何获取一周中每一天的密码?
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
这就是说的:>>>>代码不正确想想你正在评估的值有哪些可能的情况,看看你是否没有遗漏一些。以上是关于如何获取一周中每一天的密码?的主要内容,如果未能解决你的问题,请参考以下文章