GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

No menu could be recovered. Follow the blue links in the page.

This view

  • Original page
  • New address

GeezerVison is showing da.javascript.info — Filtrer gennem funktion

  • Tutorial
  • The JavaScript language
  • Avanceret arbejde med funktioner
  • Variable scope, closure
tilbage til lektionen

Filtrer gennem funktion

vigtighed: 5

Vi har en indbygget metode arr.filter(f) til arrays. Den filtrerer alle elementer gennem funktionen f. Hvis den returnerer true, så returneres det element i det resulterende array.

Lav et sæt af “klar til brug” filtre som kan bruges med filter:

  • inBetween(a, b) – tallet er mellem a og b begge tal inklusiv.
  • inArray([...]) – i det givne array.

Brugen skal være i stil med dette:

  • arr.filter(inBetween(3,6)) – vælg kun værdier mellem 3 og 6.
  • arr.filter(inArray([1,2,3])) – vælg kun elementer som matcher med et af elementerne i [1,2,3].

For eksempel:

/* .. din kode for inBetween og inArray */
let arr = [1, 2, 3, 4, 5, 6, 7];

alert( arr.filter(inBetween(3, 6)) ); // 3,4,5,6

alert( arr.filter(inArray([1, 2, 10])) ); // 1,2

Åbn en sandbox med tests.

Filter inBetween

function inBetween(a, b) {
  return function(x) {
    return x >= a && x <= b;
  };
}

let arr = [1, 2, 3, 4, 5, 6, 7];
alert( arr.filter(inBetween(3, 6)) ); // 3,4,5,6

Filter inArray

function inArray(arr) {
  return function(x) {
    return arr.includes(x);
  };
}

let arr = [1, 2, 3, 4, 5, 6, 7];
alert( arr.filter(inArray([1, 2, 10])) ); // 1,2

Åbn løsningen med tests i en sandbox.

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.