String方法匹配时NodeJS错误

时间:2015-01-01 15:29:25

标签: javascript string node.js

我已经尝试了好几个小时,但却无法找出其发生的原因。

我只是在字符串上调用match方法,这就是我所得到的:

TypeError: Cannot call method 'match' of undefined

这是我尝试的代码:

function validateURL (url) {
    return url.match( '((?:http|https)(?::\\/{2}[\\w]+)(?:[\\/|\\.]?)(?:[^\\s"]*))' );
}

我也尝试使用toString(),但得到的错误如下:

TypeError: Cannot call method 'toString' of undefined

我不确定为什么会这样。同时检查typeof url并获得string

1 个答案:

答案 0 :(得分:0)

令人惊讶的是,添加"" +使其有效。

function validateURL (url) {
    return "" + url.match( '((?:http|https)(?::\\/{2}[\\w]+)(?:[\\/|\\.]?)(?:[^\\s"]*))' );
}