Javascript 如何避免;空";与match()匹配

Javascript 如何避免;空";与match()匹配,javascript,null,match,Javascript,Null,Match,我正在使用一种方法在代码中查找媒体查询 function checkMediaQueries() { var css = cssText; var patt1 = /@media/gi; countMQ = css.match(patt1).length; if (countMQ == 0) { return false; } else { return true; } } 当它找到一些媒体查询时,一切正常。但是

我正在使用一种方法在代码中查找媒体查询

function checkMediaQueries() {
    var css = cssText;
    var patt1 = /@media/gi;
    countMQ = css.match(patt1).length;

    if (countMQ == 0) {
        return false;
    } else {
        return true;
    }
}
当它找到一些媒体查询时,一切正常。但是当该方法找不到任何值时,它不会返回任何值,因为countMQ为null。我知道这个问题,但找不到解决办法

我如何避免这个结果并使我的方法返回false呢


Thx以获取帮助

删除
.length
,因为null没有长度

var countMQ = css.match(patt1);
并检查truthy,而不是
0

if (countMQ) {
    return true;
} else {
    return false;
}
如果你不想说得更具体些,甚至是
null

if (countMQ === null) {
或者更简单

function checkMediaQueries() {
    return cssText.match(/@media/gi) ? true : false;
}

谢谢。当我实际需要匹配的数量时,我该如何处理?就像我想在我能找到的时候返回其他东西,例如3个媒体查询?match会返回匹配数,所以你可以用它代替booleanYep,但是我的问题是,当没有匹配时会出现错误。match会返回匹配数或null,所以你可以检查null,如果它不是null,长度会告诉你匹配的数量。谢谢,但我不确定如何在代码中实现这一点,你有没有给我举个例子?