Goals from Gabriel Martinelli, Nicolas Pepe and Pierre-Emerick Aubameyang, saw Arsenal end a run of nine straight games without a win in all competitions.
Angelo Ogbonna had given West Ham the lead towards the end of the first half.
Before the start of the game Arsenal were forced to make a change as Hector Bellerin got injured during training and was replaced by Aisley Maitland-Niles.
On the half hour mark, Arsenal suffered another injury with Kieran Tierney going off with a shoulder injury and was replaced by Sead Kolasinac.
This is the first time since October 2011 that Arsenal have come from a half-time losing position to win a Premier League away game.
It is also their first away win since beating Newcastle 1-0 in their first Premier League game of the season.
West Ham took the lead on 38 minutes through Ogbonna whose header took a deflection off Maitland-Niles on the way in.
Arsenal added more urgency in their play in the second half and were rewarded in the 60th minute thanks to Martinelli who capped a swift Arsenal attack with a low finish into the bottom-right corner.
In the 66th minute Arsenal went 2-1 up as Pepe cut inside onto his left foot and curled his effort into the top corner.
Just three minutes later, Pepe turned provider following a well timed cross into the boxer which Aubameyang volleyed in to make it 3-1.
The win move Arsenal up to ninth position on 22 points, seven points adrift of fourth spot in the league table.
For West Ham, they are now 16th on 16 points, just a point above the relegation zone.
Up nextfor Arsenal is a tough game against champions Manchester City at the Emirates on Sunday.
11 BUSINESS NUGGETS FROM SUPER EAGLES BRONZE MEDAL TRIUMPH. The content of this ebook will propel you above your competition. DOWNLOAD NOW!!!