A superb finish by West Ham midfielder Declan Rice, the 19-year- old’s first Premier League goal, won a fine victory on his side and dented the top four ambitions of Arsenal.
Rice beat Bernd Leno with a first shot after a good lay- off by Samir Nasri, who made his first appearance in England since August 2016.
Alexandre Lacazette was denied an excellent save from Lukasz Fabianski in a highly competitive London derby, as Arsenal did not score in the league for the first time since the opening day of the season.
West Ham had full value for their victory, with Marko Arnautovic, Rice, Nasri and Felipe Anderson all closer together when the game was unturned.
While West Ham moves to eighth in the table in nine league matches after a sixth win, Arsenal remains fifth.
The Gunners are three points behind Chelsea, who holds Newcastle at 17:30 GMT, in fourth place.