Edit in JSFiddle

// Visualize: Scope Checker  (5.6)

visualize({
    auth: {
        name: "jasperadmin",
        password: "jasperadmin",
        organization: "organization_1"
    }
}, function (v) {   
    
    createReport();
    
    $("#selected_resource").change(function () {
        //clean container
        $("#container").html("");
        createReport();
    });
    
     //enable report chooser
    $(':disabled').prop('disabled', false);
    
     function createReport(){
        //render report from another resource
        v("#container").report({
            resource: $("#selected_resource").val(),
            success: function(){
                 setTimeout(function () {
                    console.log("------------------Scope Check Results---------------------------");
                    console.log(scopeChecker.compareProperties(propertiesNames));
                    console.log("----------------------------------------------------------------");
                }, 5000);
            },
            error:handleError
        });
    }
        
    //show error
    function handleError(err){
        alert(err.message);
    }
    
});


<!-- Visualize: Scope Checker  (5.6)
  -->

<!--Provide URL to visualize.js-->
<script type='text/javascript' src="http://localhost:8080/jasperserver-pro/client/visualize.js?_opt=true" </script>
<script type='text/javascript' src="http://code.jquery.com/jquery-2.1.0.js"></script>

<script>
    function ScopeChecker(scope) {
        this.scope = scope;
    }

    ScopeChecker.prototype.getPropertiesCount = function() {
        return this.getPropertiesNames().length;
    };

    ScopeChecker.prototype.getPropertiesNames = function() {
        return Object.keys(this.scope);
    };

    ScopeChecker.prototype.compareProperties = function(scope1PropertiesNames, scope2PropertiesNames) {
        if (!scope1PropertiesNames) {
            throw "Properties for scope 1 not specified";
        }
        if (!scope2PropertiesNames) {
            scope2PropertiesNames = this.getPropertiesNames();
        }

        var comparisonResult = {
            added: [],
            removed: [],
            madeUndefined: [],
            pollution: []
        };

        var i, j;
        for (i = 0; i < scope1PropertiesNames.length; i++) {
            comparisonResult.removed.push(scope1PropertiesNames[i]);
            for (j = 0; j < scope2PropertiesNames.length; j++) {
                if (scope1PropertiesNames[i] === scope2PropertiesNames[j]) {
                    comparisonResult.removed.pop();
                    break;
                }
            }
        }

        for (i = 0; i < scope2PropertiesNames.length; i++) {
            comparisonResult.added.push(scope2PropertiesNames[i]);
            for (j = 0; j < scope1PropertiesNames.length; j++) {
                if (scope2PropertiesNames[i] === scope1PropertiesNames[j]) {
                    comparisonResult.added.pop();

                    break;
                }
            }
        }

        for (i = 0; i < comparisonResult.added.length; i++) {
            if (this.scope[comparisonResult.added[i]] === undefined) {
                comparisonResult.madeUndefined.push(comparisonResult.added[i]);
            } else {
                comparisonResult.pollution.push(comparisonResult.added[i]);
            }
        }

        return comparisonResult;
    };


    var propertiesNames = [];
    var scopeChecker = new ScopeChecker(window);
    propertiesNames = scopeChecker.getPropertiesNames();
</script>

<select id="selected_resource" name="report">
    <option value="/public/Samples/Reports/1._Geographic_Results_by_Segment_Report">1._Geographic_Results_by_Segment_Report</option>
    <option value="/public/Samples/Reports/2_Sales_Mix_by_Demographic_Report">2_Sales_Mix_by_Demographic_Report</option>
    <option value="/public/Samples/Reports/3_Store_Segment_Performance_Report">3_Store_Segment_Performance_Report</option>
    <option value="/public/Samples/Reports/04._Product_Results_by_Store_Type_Report">04._Product_Results_by_Store_Type_Report</option>
    <option selected="selected" value="/public/Samples/Reports/AllAccounts">AllAccounts</option>
    <option value="/public/Samples/Reports/5g.AccountsReport">5g.AccountsReport</option>
    <option value="/public/Samples/Reports/06g.ProfitDetailReport">06g.ProfitDetailReport</option>
    <option value="/public/Samples/Reports/ProfitDetailReport">ProfitDetailReport</option>
    <option value="/public/Samples/Reports/07g.RevenueDetailReport">07g.RevenueDetailReport</option>
    <option value="/public/Samples/Reports/RevenueDetailReport">RevenueDetailReport</option>
    <option value="/public/Samples/Reports/08g.UnitSalesDetailReport">08g.UnitSalesDetailReport</option>
    <option value="/public/Samples/Reports/08.UnitSalesDetailReport">08.UnitSalesDetailReport</option>
    <option value="/public/Samples/Reports/9.CustomerDetailReport">9.CustomerDetailReport</option>
    <option value="/public/Samples/Reports/9g.CustomerDetailReport">9g.CustomerDetailReport</option>
    <option value="/public/Samples/Reports/10g.PerformanceByStoreType">10g.PerformanceByStoreType</option>
    <option value="/public/Samples/Reports/State_Performance">State_Performance</option>
    <option value="/public/Samples/Reports/11g.SalesByMonthReport">11g.SalesByMonthReport</option>
    <option value="/public/Samples/Reports/SalesByMonthReport">SalesByMonthReport</option>
    <option value="/public/Samples/Reports/12g.PromotionDetailsReport">/public/Samples/Reports/12g.PromotionDetailsReport</option>
    <option value="/public/Samples/Reports/PromotionDetailsReport">PromotionDetailsReport</option>
    <option value="/public/Samples/Reports/13g.TopFivesReport">13g.TopFivesReport</option>
    <option value=""></option>
    <option value=""></option>
    <option value=""></option>
    <option value=""></option>
    <option value=""></option>
    <option value=""></option>
    <option value=""></option>
    <option value=""></option>
    <option value=""></option>
    <option value=""></option>
    <option value=""></option>
</select>
<!--Provide container to render your visualization-->
<div id="container"></div>