O [0-9]* não é inútil; corresponde a qualquer número (0-9) exibido antes do intervalo de números pares ( [02468] ). Isso é levar em consideração números pares de vários dígitos.
Por exemplo, se você não tiver ^[0-9]* ancorado ao início do seu padrão, ele não corresponderá:
92
910
308
20
O outro padrão que você mencionou ( /^[02468]/ ) corresponderia apenas a qualquer coisa que inicie com um dígito par.