Donald Trump's mix-up of Iran and Japan during a NATO summit speech led to widespread online mockery, highlighting the president's history of verbal gaffes and sparking political debate.