【问题标题】:what is the difference between .match and .test in javascript [closed]javascript中的.match和.test有什么区别[关闭]
【发布时间】:2016-02-10 06:11:29
【问题描述】:

在浏览 JavaScript 时,我遇到了 .match、.test 和 .exec
有什么不同?
这是最快的

【问题讨论】:

  • 您可以从文档(matchtest)或 MDN 上的等价物开始(例如,使用 MDN match 进行搜索)。
  • 几乎是重复的:match Vs exec in JavaScript“这是最快的” 不确定这是一个正确的问题。使用哪种方法取决于您要达到的目标。它们都提供不同的结果。

标签: javascript


【解决方案1】:

首先,.exec().test() 是正则表达式对象的方法。 .match() 是一个字符串方法,它接受一个正则表达式对象作为参数。

.test() 返回一个布尔值是否匹配。它不会返回实际匹配的内容。

.match().exec() 是相似的。在字符串上调用.match() 并返回一组结果。 .exec() 在正则表达式上调用,可以多次调用以返回多个复杂匹配项(当您需要与组进行多个匹配项时)。

您可以查看一些示例,了解如何使用多个连续调用 .exec() here on MDN

如果您只想知道它是否匹配并且不需要确切知道匹配的内容,您可能会使用.test()

如果您想知道匹配的内容并满足您的需求,您可能会使用 .match()(例如,您不需要通过多次调用 .exec() 来获得更复杂的内容)。

【讨论】:

    猜你喜欢
    • 2020-12-28
    • 2011-03-25
    • 2017-12-16
    • 2012-08-16
    • 2011-03-08
    • 2018-01-28
    • 1970-01-01
    • 2011-11-30
    相关资源
    最近更新 更多