Ficou muito boa sua explicação, tcarreira. Além de ter complementado com comentários no código, incrementou a resposta com o resultado do teste da nova função, mostrando que é funcional!
PS: Aproveitei para inspecionar sua listagem e ver como ativou o realce de sintaxe, alterando meu post e realçando as palavras reservadas do javascript.