gpt4 book ai didi

javascript - RegExp 在针对 `undefined` 进行测试时给出意外结果

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

我正在构建一个密码强度 验证器,用于检查密码是否包含小写和大写字符。我为此使用正则表达式并在提供的密码字符串为 undefined 时得到意想不到的结果 - 请参见下面的屏幕截图。我希望这两项检查都返回 false,但第一个返回 true

为什么第一个检查返回 trueenter image description here

最佳答案

Javascript 将尝试将 test 的参数转换为字符串(如果它不是一个字符串)。所以因为:

String(undefined) === "undefined"

您的第一个正则表达式为真,因为 "undefined" 包含一个或多个小写字母。第二个是错误的,因为没有大写字母。

你甚至可以通过注意到这一点来验证这一点

/^undefined$/.test()

返回 true

关于javascript - RegExp 在针对 `undefined` 进行测试时给出意外结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49578447/

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