我问我的朋友,更容易验证一个"电话号码字段"只为数字,他写了这个。他尝试解释它和反向逻辑"但我不明白这段代码。有人可以在婴儿婴儿中向我解释吗?条款好吗?
function validSet (input, set) {
for (var i = 0; i < input.length; i++) {
if (!set.contains(input.charAt(i)) return false;
}
}
答案 0 :(得分:0)
好的,基本上这里发生的是函数validSet
正在发送input
,它似乎是一个字符串,以及一些set
或值数组。 for
循环用于迭代input
字符串中的字符,并确定它们是否存在于提供的set
中,我假设它包含值0-9。如果input.charAt(i)
指向的字符未包含在提供的set
中,则该函数返回false,因此您知道input
字符串不是有效的电话号码,因为它包含一些值不是数字。
话虽如此,我还会进一步采用此功能来真正检查输入的值是否为有效的电话号码。即确保它是正确的长度和其他可能的有效性检查,取决于它的重要性。
答案 1 :(得分:0)
该函数循环输入字符串中的字符。对于输入字符串中的每个字符,它会检查设置字符串中是否存在该字符。如果它没有,则输入无效,函数返回false。
例如,如果你有:validSet("555-5a55", "0123456789-")
,当有效测试到达&#39; a&#39;性格,因为没有&#39; a&#39;在设置字符串中。