The visitors were quick out of the starting blocks and went on to take the lead after just 12 minutes played.
Paulo Dybala then pounced on a poorly cleared ball to sidefoot into the bottom corner of the Sporting net, but the effort was well wide of goal.
Just before the half-hour mark, the hosts managed to settle their fans' nerves with an equaliser, achieved through a well-taken Miralem Pjanic free kick which was curled over the wall and into the top right-hand corner.
Patricio kept his side in the game with a smart save just two minutes before the break, getting down low to keep out a close-range Giorgio Chiellini drive at the far post.
Desperate to claim all three points, Juve piled men forward as the minutes ticked by and were rewarded in the 84th minute by netting the winner.
Douglas Costa, who had only just come on as a substitute, chipped a ball over the Sporting defence and towards Mario Mandzukic at the far post, the Croatian planting a header beyond Patricio and into the net.
The result sees Juve sit second in Group D on six points, three behind first-placed Barcelona, while Sporting sit third with three points from three games.