Aaron Ramsey scored a goal of the season contender as Arsenal thrashed Fulham to record a ninth straight win for the first time since April 2015.
Alexandre Lacazette scored two impressive goals before substitute Ramsey finished off a classic team move, Pierre-Emerick Aubameyang netted twice and Hector Bellerin added a fifth in stoppage-time.
Frenchman Lacazette claimed the opening goal of the London derby at Craven Cottage when he spun on Nacho Monreal's cutback before drilling the ball past Marcus Bettinelli.
But Fulham drew level before the break as Luciano Vietto pounced on a loose pass by Monreal to thread the ball through to Andre Schurrle, who chipped over Gunners keeper Bernd Leno.
Arsenal were a different side after the interval and Bettinelli – called up by England this week – produced the save of the game to keep out a fierce strike from Bellerin, moments before Lacazette added his second – an early strike from long range which seemed to catch the Fulham keeper by surprise as it nestled in the bottom corner.
Ramsey was introduced in the 67th minute – and the Welshman added a third just seconds later as Arsenal moved from left to right with one-touch passing and neat headers.
The ball made its way to fellow substitute Aubameyang, who swept the ball across the face of the Fulham goal for Ramsey to flick past Bettinelli.
Aubameyang added a fourth as he swivelled on low cross from Bellerin before side-footing the ball into the far corner.
And the Gabon striker rounded off the scoring after a neat low finish to cap a thoroughly entertaining victory in the derby.
Fulham had their opportunities to respond. Aboubakar Kamara had the pick of the chances but shouldered Cyrus Christie's cross instead of meeting it with his head.
A sixth consecutive Premier League victory for Arsenal sees Unai Emery's men move up to third in the table, a point behind Manchester City and Liverpool, who meet at Anfield later on Sunday.
Fulham remain just above the relegation zone in 17th.