Try:
for ( var j = 0; j < columnListB.length; j++)
{
for ( var i = 0; i < columnListA.length; i++)
{
if (columnListA[i].id === columnListB[j].id)
{
columnListA.splice(i, 1);
}
}
}
Remove nonSelLength = columnListA.length; i < nonSelLength;
from loops and just define variable as less than length of the object