the_date(): By default, it will echo the date of the post in the format F j, Y, so if the post was published on 20 November 2018, it would echo November 20, 2018.
get_the_date(): This fetches the date and doesn’t echo it out. To echo it, you’d use echo get_the_date(), which gives you the same result as the_date(). It’s useful if you’re already using echo in your code. It can also help you get round the problem of dates not being displayed, as you’ll see shortly.
You can also use get post id and using that id you can get post date and time
Reference https://code.tutsplus.com/tutorials/displaying-the-date-and-time-in-the-loop–cms-32237
echo get_the_date( get_post_ID());
<ul class="newsletters">
<?php $query = new WP_Query( array(
'post_type' => 'post',
'category_name' => 'newsletters',
'posts_per_page' => 8
) );
while ($query->have_posts()) : $query->the_post(); ?>
<li class="home newsletter"><a href="<?php the_permalink(); ?>"><?php the_title(); ?> - <?php echo get_the_date( 'j F, Y' ); ?></a></li>
<?php endwhile; ?>
</ul>