我希望能够在 JavaScript 中调用函数并返回原始值,但也返回数据。例如,假设我想验证密码。有时我想知道它是否有效(满足最低要求),有时我想知道它有多强,有时我想知道它在文字上有多强(“弱,强”等)。 ).
所以基本上我希望这是有效的:
if (validate.checkPassword(password)) ...
但也可以这样工作:
if (validate.checkPassword(password).strength === "strong")
if (validate.checkPassword(password).rating >= 6)
既然一个对象既可以是函数又可以有数据,那么一个 JSON 返回值是否可以既有原始类型基值,又可以有其他数据成员?
最佳答案
不可以,东西不能是多重类型的。但是,您可以向该数据结构添加一个 bool 值
if (validate.isValidPassword(passWord).isValid)...
但是您应该强烈地重新考虑您的命名法,因为那里有些令人困惑的东西。
否则,null
是错误的,所以如果您只在它有效的 block 中使用后面的语句,那么您应该没有问题。
关于JavaScript 多种返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12306523/