2

我在 JSLint 上有点挣扎。我有以下代码:

// inside a for-loop
if ( aMatch.length > 0 ){
    temp =  wrap.find( aMatch );                                
    break;
} else if ( aMatch.length === 0 && o.siteMap[targetPath].length !== 0 ){
    temp = targetPath;
    break;
}

JSLint 抱怨:

Empty block   "if ( aMatch.length > 0 ){"

问题:
片段有什么问题。“块”对我来说不是空的......

感谢您的一些见解!

编辑
这是问题中的全部功能(无评论)

loopHistory: function (scope, setPageContainer) {

    var self = this,
        o = self.options,
        wrap = $('div:jqmData(wrapper="true")').length > 1 ? $('div:jqmData(wrapper="true")').last() : $('div:jqmData(wrapper="true")'),
        $loopLength = $.mobile.urlHistory.stack.length-1, 
        temp, aMatch, parsedPath, dUrl, targetPath, i;

    if ( scope === "internal") {
        if ( $loopLength >= 2) {

            for ( i = $loopLength; i>1; i--) {
                parsedPath = $.mobile.path.parseUrl( $.mobile.urlHistory.stack[i-1].url );      
                targetPath = parsedPath.search.length !== "" ? ( parsedPath.pathname + parsedPath.search ) : parsedPath.pathname;

            if ( setPageContainer.jqmData('id') === $.mobile.urlHistory.stack[i-1].pageContainer.jqmData('id') && targetPath !== $.mobile.path.parseUrl( $.mobile.urlHistory.stack[$.mobile.urlHistory.activeIndex].pageUrl ).pathname ) {

                aMatch = $('div.ui-page').filter(function(){ return $(this).jqmData('url') === targetPath; });

                if ( aMatch.length === 0 && o.siteMap[targetPath].length !== 0 ){

                }

                ... ahh yes.... 
                if ( aMatch.length > 0 ){
                    temp =  wrap.find( aMatch );                                
                    break;

好的。我懂了...

4

1 回答 1

6

好的。我的错。在 JSLint 提到的块之前有一个空的 if-else 块。

if ( aMatch.length === 0 && o.siteMap[targetPath].length !== 0 ){  }


if ( aMatch.length > 0 ){
   temp =  wrap.find( aMatch );                                
   break;

从来没有注意到。

于 2012-11-04T09:24:13.830 回答