As the array is empty, the callback you pass to $.each
isn't even called (it's called once for each item). You have to do the test out of this callback :
if (data.items.length === 0) {
$('.list').html('the ' + address + ' list is empty');
} else {
$.each( data.items, function( key, value ) {
// continue to display the returned records
});
}