Denis Zakaria was part of the Switzerland team which pipped Italy to automatic 2022 World Cup qualification. AFP
In a statement Juve said that Zakaria has moved to Turin for 4.5 million euros (5.05 million euros), with the 25-year-old signing a deal until the end of June 2026 which will earn him a reported three million euros a season.
He would have been out of contract with Gladbach come the end of the current campaign after deciding not to renew his deal with the German Bundesliga team.
Zakaria has played 40 times for his country, scoring three times, and was part of the Swiss team which pipped Italy to direct qualification for the 2022 World Cup.
Juve also announced the signing of defender Federico Gatti from Frosinone on Monday, the 23-year-old becoming a Juve player for a reported 10 million euros but staying on loan at his current Serie B side until the end of the season.
Rodrigo Bentancur and Dejan Kulusevski then both signed for Tottenham Hotspur.
Juve said that Uruguay midfielder Bentancur moved to the Premier League club for 19 million euros plus up to six million euros in add-ons "upon achievement of specific sportive performance objectives".
Kulusevski meanwhile has made a loan move to White Hart Lane until June next year for 10 million euros, with Tottenham then obliged to buy the Sweden international for 35 million euros should he meet unspecified objectives by the end of his loan.
Juve had already bolstered their line-up this month with Friday's signing of Serbia striker Dusan Vlahovic from Fiorentina, as the 36-time Italian champions try to qualify for the Champions League.
Massimiliano Allegri's side sit fifth in Italy's top flight, one point behind fourth-placed Atalanta having played a game more.
Joint Serie A top scorer with 17 goals, Vlahovic was brought in to improve a poor league scoring record of just 34 goals in 23 matches.
(For more sports news and updates, follow Ahram Online Sports on Twitter at @AO_Sports and on Facebook at AhramOnlineSports.)