gpt4 book ai didi

用户输入的 Javascript 验证

转载 作者:行者123 更新时间:2023-11-29 15:15:18 26 4
gpt4 key购买 nike

尝试编写一个代码,用户必须从某个列表中输入一个字符串才能继续。我正在使用一个常量来列出有效的字符串,但是我需要能够将两个值视为相等。

const VALID_STATE = ('queensland%qld%new south wales%nsw%victoria%vic%northern territory%nt%western australia%wa%south australia%sa%tasmania%tas%australian capital territory%act');

我该如何更改它,以便我可以将 QUEENSLAND 和 QLD 视为相同的值,因此如果另一个已经输入,则一个无效。下面是我用来验证用户输入的代码。

state = prompt('Input a state name:');
while(VALID_STATE.indexOf(state.toLowerCase())<0){
alert('The input state was not valid.');
state = prompt('Re-enter the state name:');

提前致谢。

最佳答案

如果有人输入 "nd%ql".. 怎么样?这不是完成这项工作的正确方法。将它们保存在 Map 对象中,并将 "queensland" 键和 "qld" 键映射到您选择的相同名称。

var stateMap = new Map([['queensland','qld'], ['qld','qld'], ['new south wales', 'nsw'], ['nsw', 'nsw'], ['victoria', 'vic'], ['vic', 'vic'], ['northern territory', 'nt'], ['nt', 'nt'], ['western australia', 'wa'], ['wa', 'wa'], ['south australia', 'sa'], ['sa', 'sa'], ['tasmania', 'tas'], ['tas', 'tas'], ['australian capital territory', 'act'], ['act', 'act']]);

var state = prompt('Enter a state.');
while (!stateMap.has(state.toLowerCase())){
alert('The input state was not valid.');
state = prompt('Enter a state.');
}
state = stateMap.get(state);

关于用户输入的 Javascript 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50014963/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com