Your friends install the app on their device. They provide access to their contacts. FB slurps in all of that data. For every person in the user's contacts, FB compares that info to their records. They update connections where found, and start new records when not found. So they now know your name/email/phone number/physical address info depending on how detailed your friend's contact was about you. I haven't read anything if the user has added your picture in their contacts if that's something FB can read as well, so they could know what your face looks like. They are now tracking you, and you've at this point never joined FB. One day, you decide to join FB, and you're presented an option to connect with people FB thinks/knows you know. Oh, and now that you're a user, you don't get to see that info that they had been making on you before you signed up either.
To me, this is the most evil part of the scheme.
I'm definitely not giving Google a pass. I just didn't mention them ;-) Google Analytics, Fonts, whatever are just as bad, to me. I as an unsuspecting web user have my browser tracked from web developers using some free tools. I have no idea that it is occurring as a viewer. If a website puts in FB's like buttons, it is visible to me, and being in the know, I understand the repercussions of that site's decision. GA, Fonts, etc, are completely hidden from view. This is why I've used NoScript/Ghostery/etc throughout the years. It started with ads, but now I'm more concerned about these types of scripts.