The 30-year-old joins the Foxes following West Brom's relegation from the Premier League last season, which triggered a clause in his contract allowing him to leave the club for a reported fee of just £3.5m.
The likes of Arsenal, Manchester City and Manchester United have all been linked with Evans in recent transfer windows, but Leicester have now confirmed his arrival at the King Power Stadium, where he has put pen to paper on a deal which will keep him at the club until 2021.
"It's great to join and I'm happy it's all gone through. When this opportunity came up, it's one that I couldn't turn down. It's an ambitious club, the owners are ambitious and everyone wants to push the club forward," Evans told the club's official website.
"I hope that I can give lots to the team and the club. It's a great place to play football, the fans really get behind the team and the players are fantastic - these are all factors that made me want to sign for this football club."
Leicester manager Claude Puel added: "Jonny is a player of great experience in the Premier League and to have him as part of our squad is fantastic news for the football club. He knows exactly what it takes, he is a winner and a leader. He will bring a great deal to our squad and I'm delighted to welcome him to Leicester City."
Evans becomes Leicester's second signing of the summer after Ricardo Pereira.