gpt4 book ai didi

javascript - 针对字符串/对象进行测试

转载 作者:行者123 更新时间:2023-11-28 16:10:16 25 4
gpt4 key购买 nike

我有一个 JSON 编码的 PHP 数组:

<script>
var registeredEmails = <?php echo(json_encode($emails)); ?>;
</script>

为了检查这是否有效,我这样做:

console.log(registeredEmails);
// this outputs: ["john@domain.com", "mary@domain.com"]

现在我想迭代该 JSON 并针对它包含的所有字符串测试某个字符串。

for (var email in registeredEmails) {
if (registeredEmails.hasOwnProperty(email)) {

var duplicate = registeredEmails[email];

console.log(duplicate + ' is typeof: ' + typeof(duplicate));
// this outputs: john@domain.com is typeof: string

// $(this).val() is a string from somewhere else
if (duplicate.test($(this).val())) {
// we found a match
};
}
}

据我了解,test() 方法测试字符串的匹配。我已经测试过以确保我的变量 duplicate 是一个字符串,但显然它仍然是一个对象。我收到以下 JS 错误:

Uncaught TypeError: Object john@domain.com has no method 'test'

这是为什么?

最佳答案

test()是 RegEx 对象的方法,而不是 String。

你最好的选择可能是使用 String.search()反而。您也可以使用 String.indexOf()如果您不尝试使用正则表达式匹配。

关于javascript - 针对字符串/对象进行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13178496/

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