Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Week 3 Chapter Summaries #157

Open
jargill21 opened this issue May 15, 2021 · 0 comments
Open

Week 3 Chapter Summaries #157

jargill21 opened this issue May 15, 2021 · 0 comments

Comments

@jargill21
Copy link

Chapter 5: Higher Order functions

Er zijn twee voorbeelden van code:

let total = 0, count = 5; while (count <= 15) { total + = count; count + = 5; } console.log (total); `` ''

of:

`` JavaScript console.log (sum (range (5, 15)));

In dit voorbeeld is de tweede waarschijnlijk de juiste manier. Dit komt doordat de oplossing wordt uitgedrukt in een taal dat overeenkomt met het probleem dat wordt opgelost.

Zie het als een recept: je kunt een lang recept met veel tekst hebben, maar het is waarschijnlijk nuttiger als het alleen maar opsommingstekens en korte zinnen zijn. Dit werkt hetzelfde met code.

Abstractie
Dit soort vocabulaires worden gewoonlijk abstracties genoemd. Ze verbergen details en geven ons de mogelijkheid om op een hoger niveau over problemen te praten.

Functies van hogere orde
Functies die op andere functies werken, ofwel door ze als argumenten te beschouwen of door ze terug te sturen, worden functies van hogere orde genoemd. Ze stellen ons in staat te abstraheren over acties, niet alleen over waarden. We kunnen functies hebben die nieuwe functies creëren:

function greaterthan (n) { return m => m> n; } let greaterThen10 = greaterThan (10); console.log (greaterThan10 (11)); // → true

Array
Arrays bieden een aantal nuttige methoden van hogere orde. U kunt forEach gebruiken om de elementen in uw array te doorlopen. En met de filtermethode retourneert het een nieuwe array met alleen de elementen die door het filter of de functie zijn gegaan.

function filter (array, test) { let passed = []; for (let element of array) { if (test (element)) { passed.push (element); } } return passed; }

of:

console.log (filter (SCRIPTS, script => script.living)); // → [{name: "Adlam",…},…]

Met verminderen kunt u alle elementen in een array combineren tot één waarde. Met de some-methode kun je testen of een element overeenkomt met een bepaalde predikaatfunctie.

@jargill21 jargill21 changed the title Chapter 5 Week 3 Chapter Summaries May 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant