In my country, web hosting service offer at here is not expensive, approximately $35 per year only, while foreign web hosting service, some offer $5 per month to $8 per month. Compare to local, still much more expensive, some beginner or new webmaster not afford to purchase.
On the other hand, if the target visitor is a local visitor, most webmaster would prefer to host the website locally, since it is fast loading and low cost to them.
In some other case, webmaster choose foreign web hosting service such as US hosting or Canada hosting because their target visitor is from a foreign country or the entire world. The server over there are much faster because the internet speed/bandwidth they offer are higher.
Just for example, local server serve 10Mbps, to access locally, it take may be 2-3 second to load the full page, while foreign country need to take 10 second to load the full page. If your website hosted at US or Canada server who serve 100Mbps, visitor at those country access need 1 second, while other country around the world (my country) take about 5 second to 7 second. So meaning that it still serves faster speed.
Oh ya, 1 more tips, Search Engine bot crawl your page faster than you hosted at those locations such as US and Canada, here is my experience once I change to US server from Malaysia Server since march
Above statistic show Time spent downloading a page from Google (in milliseconds).
Well, if you are looking for Malaysian web hosting company who has a server in US, or Singapore, you may contact Green Hosting Malaysia. They have fast loading server with very affordable pricing.