Zhang begon met voetballen in de jeugdopleiding van Hangzhou Greentown in 2008. Als gevolg van zijn goede ontwikkeling, werd hij opgeroepen voor verschillende Chinese nationale jeugdteams. In 2012 tijdens de Aziatisch kampioenschap voetbal onder 17 scoorde hij twee goals in drie wedstrijden tijdens het toernooi. Op 13 mei 2015 scoorde Zhang zijn eerste doelpunt voor het eerste elftal van Hangzhou Greentown, tegen Wuhan Hongxing in de beker.
Na een paar keer stages te hebben gelopen bij eredivisionist Vitesse, tekende Zhang op 1 juli 2015 een contract voor twee jaar bij de Arnhemmers. Op 13 februari 2016 maakt hij op 19-jarige leeftijd zijn debuut voor Vitesse in de thuiswedstrijd tegen SC Heerenveen. Hij scoorde zijn eerste doelpunt voor Vitesse op 6 maart 2016 in een 2-1 overwinning tegen Roda JC, dat ook direct het winnende doelpunt was. Tevens won hij met Vitesse in 2017 de bekerfinale met 2-0 van AZ. Door dit resultaat won de club voor het eerst in hun 125-jarig bestaan de KNVB Beker.
Zhang tekende in juli 2017 een contract tot medio 2020 bij West Bromwich Albion.[1] De Engelse club verhuurde hem direct voor twee jaar aan Werder Bremen, de nummer acht van de Bundesliga in het voorgaande seizoen.[2] Zhang speelde hier een jaar lang geen minuut in het eerste elftal. West Bromwich Albion verhuurde hem daarop gedurende het seizoen 2018/19 aan ADO Den Haag. Op 22 februari 2019 werd het huurcontract ontbonden en tekende Zhang bij Beijing Sinobo Guoan.
Bronnen, noten en/of referenties