JavaScript
var bills = [
["1/1/2013","Bill",0,0,"Fake Management","Management Fee","","$750.00",0,0,"$19,148.85"],
["1/1/2013","Bill",0,0,"Fake Edison","Electric PLP","","$1,208.37",0,0,"$20,357.22"],
["1/1/2013","Bill",0,0,"Fake Elevator","Monthly Elevator Maintenance January","","$1,055.27",0,0,"$21,412.49"],
["1/2/2013", "Bill" ,0 , 0, "Fake Rug Repair Service", "5 Floor, wall to wall carpet", "" , "$375.00", 0, 0, "$21,787.49" ],
["1/4/2013","Check 128", 0, 0, "Fake Rug Repair Service", "5 Floor, wall to wall carpet", "$375.00", "", 0, 0, "$19,540.92" ],
];
var payments = [
["1/3/2013","Check EFT",0,0,"Carlos ","Weekly Cleaning","$375.00","",0,0,"$21,124.29"],
["1/4/2013","Check 126",0,0,"Fake Edison","25-2658-0826-0000-8 - Electric PLP","$1,208.37","",0,0,"$19,915.92"],
["1/4/2013","Check 128", 0, 0, "Fake Rug Repair Service", "5 Floor, wall to wall carpet", "$375.00", "", 0, 0, "$19,540.92" ],
["1/4/2013","Check 129",0,0,"Fake Group Companies","CUC-7001484-02-01 - Insurance First Payment","$260.50","",0,0,"$19,280.42"],
];
var paid = [];
var unpaid = [];
var i, j, bLen = bills.length, pLen = payments.length;
var bill, payment, foundPaid;
for( i = 0; i < bLen; i += 1 ) {
bill = bills[i];
foundPaid = false;
for ( j = 0; j < pLen; j += 1 ) {
payment = payments[j];
if ( bill[7] === payment[6] ) {
foundPaid = true;
break;
}
}
if ( foundPaid ) {
paid.push( bill );
} else {
unpaid.push( bill );
}
}
console.log( 'PAID', paid );
console.log( 'UNPAID', unpaid );