You don't say where you've seen that your grandfather's name was "Johansson". Maybe that is only in Swedish records, and he has always been "Erickson" in US records? Then that would be very typical.
I assume that your grandfather's father was called "Johan Eriksson". Then the thing to understand is that when your grandfather was born in 1877 "Johansson" wasn't a family name in Sweden. It was really not a name, but rather a designation of what his father's name was – a patronymic. So he was Johan's son = Johans son = Johansson. If he had a sister she was Johan's daughter = Johans dotter = Johansdotter. It meant nothing more, nothing less.
Some people in Sweden had family names, but most didn't, and used this system of patronymics. But ... right at this time the system started to crumble, and many families took family names, often by making family names out of the patronymics. For emigrants to the United States there was an extra incentive, since the Americans didn't understand the patronymic system and assumed that there would be an 'Ericson family' where everyone was an Ericson, and might think the children were born out of wedlock if you didn't do it like that.
So in particular if your grandfather emigrated together with his family (which I assume he did, since he was around 14) they probably would all redefine themselves to be an 'Ericson family' (including "Mrs. Ericson" who before would carry her own patronymic and might be for example "Lisa Henriksdotter" if her father was named Henrik).
The same might have happened if the family had stayed in Sweden for that matter. Not long afterwards the patronymic system had almost died out.