Update: After posting this article, a friend from Facebook pointed out that the list of advertisers are companies provided personal info to match my Facebook info to run targeting campaigns, instead of Facebook giving away the contact info to these companies. However, I see companies I have never heard of and they are not in Australia from some quick Google searches. If that's the case, how these companies got my email address or some kind of identifier in the first place is truly worrying.
Facebook sells your data to advertisers to run marketing campaigns targeting you, that's no news. Finally, a company called Cambridge Analytica abused it enough to make the headlines last week. This article gives a good summary of what's going on: EVERYTHING YOU NEED TO KNOW ABOUT FACEBOOK AND CAMBRIDGE ANALYTICA
I am wondering how many advertisers actually have my data over these years through Facebook. It turns out that my contact info was sold to 69 companies by Facebook. If you are wondering how many advertisers have your contact info, here is the way to find out in just few minutes.
Login to your Facebook from a computer, and click on the triangle at the top right, then choose "settings" in the menu. At the bottom of the options, there is a link called "Download a copy of your Facebook data". Click on it to request your data. It will take Facebook a few minutes to get the data ready and to email you the download link.
The data is packaged as a ZIP file. Once you unzip it, you can find a file called "ads.html" under the "html" folder. Open up the ads.html file with any browser, you can see the ad topics you are in, the ads targeting you and the advertisers have your contact info.