Juventus battled to a 3-1 win at Sampdoria thanks to a double by Alvaro Morata on Saturday, with Massimiliano Allegri's fourth-placed side now four points behind Serie A leader AC Milan.

An own goal from Maya Yoshida and Morata's sweetly-struck penalty helped Juve storm into a 2-0 first-half lead, with Sampdoria no match for the visitor in the opening period.

However, the home side took the game to Juve in the second half, winning a penalty after Adrien Rabiot's handball, but goalkeeper Wojciech Szczesny pulled off a stunning stop.

READ | Ronaldo lays claim to all-time leading scorer record on 807 goals

Substitute Abdelhamid Sabiri's deflected free-kick did get Sampdoria back into the contest six minutes from time, but Juve's Spanish striker Morata arrived right on cue at the back post four minutes later to put the game to bed.

The win moved the Turin side to 56 points from 29 matches after a run of one defeat in 21 games in all competitions. It is one point behind Napoli, which plays on Sunday, in third place and closed the gap on Milan, which hosts Empoli later on Saturday.

"We need to improve when we have control of the game," Allegri told DAZN . "In the second half we had to understand the situation better and work on our game management.

"In Genoa it is not easy to win, but the team did well. It was important to win, to consolidate fourth place and better prepare for the Champions League," he added ahead of the second leg at home to Villarreal on Wednesday with the score at 1-1.

Despite January signing Dusan Vlahovic being left on the bench, Juve had no trouble finding the target.

READ | Cristiano Ronaldo hits hat-trick as Man United beats Tottenham 3-2

Moise Kean stood in for the Serbia striker and would have opened the scoring at the far post in the 23rd minute had Yoshida not got there first before Morata rifled home from the spot 11 minutes later after Kean had been fouled.

A late rally from Sampdoria threatened to derail Juve but penalty-saving expert Szczesny came to the rescue.

The Polish stopper became the first keeper to save three Serie A penalties in a row since Emiliano Viviano in the 2017-18 campaign when clawing out Antonio Candreva's spot kick.

Morata's eighth league goal of the season sealed the win and the Spaniard has now scored 10 or more goals in all competitions in each of the last eight campaigns.

Sampdoria's third defeat in its last four league games means it remains embroiled in a relegation battle in 16th, four points above the bottom three.