Last season’s Coppa Italia winners Napoli took the lead through Edinson Cavani in the 27th minute before Kwadwo Asamoah levelled and Goran Pandev restored Napoli’s advantage before the interval.
Arturo Vidal levelled from the penalty spot before Napoli lost Pandev, Juan Zuniga and coach Walter Mazzarri to red cards towards the end of the 90 minutes.
An own goal from Christian Maggio and a further strike from Mirko Vucinic clinched victory for the Serie A champions in extra-time.
Juve, with Massimo Carrera on the bench in place of Antonio Conte, who has been suspended for 10 months pending an appeal, began the game brightly in the Bird’s Nest stadium in Beijing.
Sebastian Giovinco soon settled into his new role in the Juve attack and created a few openings before Napoli scored against the run of play.
Cavani put Mazzarri’s side in front in the 27th minute when he beat the offside trap and then kept his cool to beat Gianluigi Buffon.
Juve equalised 10 minutes later with new arrival from Udinese Asamoah scoring his first goal for the club with a finely-executed volley from the edge of the area.
Parity lasted only four minutes, though, before Pandev restored Napoli’s lead.
Leonardo Bonucci initially lost possession, but the Macedonian’s lobbed finish took more credit than the Juventus defender’s error could take blame as an efficient Napoli regained the advantage before half time.
That goal was almost cancelled out immediately in the second half when Mirko Vucinic’s shot was pushed onto the crossbar by Morgan de Sanctis.
Vucinic got round De Sanctis on the hour mark, but Paolo Cannavaro covered to defend the Napoli goal as the defending Serie A champions started to raise their game.
They got their reward in the 73rd minute when substitute Federico Fernandez fouled Vucinic inside the area and Vidal converted the penalty.
The game opened up and the tension increased, so much so that Pandev vented his anger at a linesman and was swiftly sent off.
Zuniga followed him into the dressing room in stoppage time when he picked up a second yellow card for a foul on Giovinco.
It was all too much for Mazzarri, who was sent off for his protests as the teams prepared for extra time.
Napoli could no longer control their emotions and Juve capitalised to take the lead seven minutes into extra time when Maggio headed Andrea Pirlo’s free-kick into his own goal before Juve sealed victory through Vucinic in the 101st minute of the game.