“OFFICIAL: Luca #Pellegrini is a Bianconero! #WelcomePellegrini,” a post on their verified Twitter handle read.
The 20-year-old left-back passed a medical on Sunday and has agreed terms on a four-year deal.
Juve confirmed a fee of €22m will be paid to Roma over the course of three years for Pellegrini, with the transfer of Spinazzola to cost Roma €29.5m across the same period.
Pellegrini made 12 appearances on loan at Cagliari during the second half of 2018/2019 and will now compete against Alex Sandro for a starting spot at Allianz Stadium.
Italy international Spinazzola was loaned out seven times by the Bianconeri and leaves having played 10 Serie A games across his seven years in Turin, all coming last season.