Programação Funcional em Javascript — First-Class Function ( Funções de Primeira Classe )

Uma linguagem de programação só pode ser considerada funcional se tratar suas funções como first-class citizen, ou seja, como (objeto/entidade) de primeira classe.

Em uma tradução livre first-class citizen significa ( cidadão de primeira classe ), o termo não é novo e foi citado pela primeira vez por Christopher Strachey em 1960.

Na Javascript, as funções são consideradas como (objetos/entidades/valores) de primeira classe, com elas nós podemos fazer quaisquer operações que a linguagem permita. Isso só acontece porque a linguagem trata a função como se fosse um valor.

Vamos ver algumas características que demonstram que as funções são (objetos/entidades/valores) de primeira classe:

1 — Atribuir a função a uma variável.
2 — Passar a função como parâmetro a uma outra função.
3 — Retornar a função como valor de uma outra função.
4 — Armazenar a função em uma estrutura de dados
.

Vejamos alguns exemplos:

1 — Atribuindo uma função a uma variável:

2 — Passando uma função como parâmetro para outra função:

3 — Retornando uma função como valor de outra função:

4 — Armazenando uma função em uma estrutura de dados:

Os códigos do artigo podem ser encontrados aqui.

Provavelmente você já utilize essas características das funções no seu desenvolvimento do dia a dia e nem tenha se dado conta da importância e do poder que as funções possuem na JavaScript.

É isso ai pessoal, espero que tenha ficado claro e que tenham gostado, por favor deixem seus comentários, críticas e sugestões.

Até o próximo artigo sobre Programação Funcional em JavaScript!!

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch

Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore

Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store