Should the removeAt() function remove the removing node’s pointer?

You don't need to assign null to current. It is a variable that is local to the function, so as soon as the function exits, there is no more reference to the removed node, and it can be garbage collected.

If outside of the function's context you happen to have another reference to the node that is removed, then the node will not be garbage collected. Assigning null to current will not change that situation.

Some coders may want to isolate the node however:

current.next = null;

This way, if there is somewhere still a reference to that node, there is no risk of walking from that node into the list, which may be undesired. On the other hand, it really is a code smell if outside of the function there is still a reference to the node that is removed, and it would get really smelly if that reference is still used to traverse along its next property. So if the overall code is doing the right thing, you don't really need to do current.next = null either.