我是Javascript的新手,并尝试学习一些基础知识。
请检查我是否正确完成了以下操作?如果没有,请概述我尚未做的事情。
我必须:
我的代码:
var year = prompt('Enter year of birth as a 4 digit integer');
var month = prompt('Enter the name of the month of birth');
// Chop everything after the first 3 characters and make it lowercase
month = month.substr(0,3).toLowerCase();
// Store your array in months, differently named than the month input
var months = ["jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct",
"nov", "dec"];
// We then use array.indexOf() to locate it in the array
var pos = months.indexOf(month);
if (pos >= 0) {
// valid month, number is pos
}
答案 0 :(得分:0)
因为你只是想知道你的代码是否正确,但我认为你写的正确,如果你仍然想要使用javascript的最佳实践,你可以参考以下链接,你会发现这么多链接谷歌。
http://www.javascripttoolbox.com/bestpractices/
http://net.tutsplus.com/tutorials/javascript-ajax/24-javascript-best-practices-for-beginners/
顺便提一下,您的功能的一行代码也可以写成:if(months.indexOf(month.substr(0,3))>=0) alert("present")
答案 1 :(得分:0)
“月份缩写字符串”应为"JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC"
。
答案 2 :(得分:0)
您的代码显然不遵循指定的说明:
但确实符合计算用户出生月份的要求。我认为数组搜索甚至优于字符串搜索(通过在月份名称之间找到字符串("anf"
等)没有害处,并且因为没有检查这些可能性而更快),但他们似乎希望你这样做他们的方式。