Nominally, a recursive resolver receives NS records when it gets a referral from an authoritative server. NS records, as you know, point to names, not IP addresses. However, the DNS protocol's response format has a provision for additional records, which is a collection of resource records that aren't part of the answer to the question that was asked but which the answering nameserver deems might be useful to the requester. Additional records are optional: sometimes the answering nameserver has such records to offer, and sometimes not, and that's ok.
An A or AAAA record for a nameserver that appears in the answer to a DNS query is one of the main uses for additional records. As the request originator, you might get such an additional record. If you do, you're lucky: it saves you from having to query for it. If you don't, it just means you have to issue an extra query.
In practice, most (all?) of the public delegation points (top-level gTLDs, second-level domains under many national registries, etc...) request the IP addresses of nameservers, not just their names, when domains are registered. This is so that they can place this information in the zone file as glue records, which are offered as additional records in responses.