JS-zelfstudie

JS HOME JS Introductie JS Waarheen? JS-uitgang JS-verklaringen JS-syntaxis JS-opmerkingen JS-variabelen JS Let JS Const JS-operators JS Rekenen JS-opdracht JS-gegevenstypen JS-functies JS-objecten JS-evenementen JS-snaren JS String-methoden JS String zoeken JS String-sjablonen JS-nummers JS-nummermethoden JS-arrays JS-array-methoden JS-array sorteren JS-array-iteratie JS Array Const JS-datums JS-datumnotaties JS Datum Ophaalmethoden Methoden voor het instellen van JS-datum JS Math JS Willekeurig JS Booleans JS-vergelijkingen JS-voorwaarden JS-schakelaar JS Loop For JS-lus voor binnen JS Loop For Of JS-lus terwijl JS Break JS-iteraties JS-sets JS-kaarten JS Typeof JS Type conversie JS Bitwise JS RegExp JS-fouten JS-bereik JS Hijsen JS strikte modus JS dit trefwoord JS-pijlfunctie JS-lessen JS JSON JS-foutopsporing JS-stijlgids JS-best practices JS-fouten JS-prestaties JS Gereserveerde Woorden

JS-versies

JS-versies JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge JS-geschiedenis

JS-objecten

Objectdefinities Objecteigenschappen Objectmethoden Objectweergave Objectaccessoires Objectconstructeurs Objectprototypes Object-Iterables Objectsets Objectkaarten Objectreferentie

JS-functies

Functiedefinities Functieparameters: Functie-aanroep Functie-oproep: Functie Toepassen Functie Sluitingen

JS-lessen

Klas Intro Klasse Overerving Klasse Statisch

JS Asynchrone

JS-callbacks JS asynchroon JS belooft JS Async/Wachten

JS HTML DOM

DOM Intro DOM-methoden DOM-document DOM-elementen DOM HTML DOM-formulieren DOM-CSS DOM-animaties DOM-evenementen DOM-gebeurtenisluisteraar DOM-navigatie DOM-knooppunten DOM-collecties DOM-knooppuntlijsten

JS-browserstuklijst

JS-venster JS-scherm JS-locatie JS-geschiedenis JS-navigator JS pop-upwaarschuwing JS-timing JS-koekjes

JS Web API's

Introductie web-API Web Forms API Webgeschiedenis-API Webopslag-API Web Worker-API Web Fetch-API Webgeolocatie-API

JS AJAX

Ajax-intro AJAX XMLHttp Ajax-verzoek Ajax-reactie AJAX XML-bestand AJAX PHP Ajax ASP AJAX-database AJAX-toepassingen Ajax-voorbeelden

JS JSON

JSON-intro JSON-syntaxis JSON versus XML JSON-gegevenstypen JSON ontleden JSON Stringify JSON-objecten JSON-arrays JSON-server JSON PHP JSON HTML JSON JSONP

JS versus jQuery

jQuery-kiezers jQuery HTML jQuery CSS jQuery DOM

JS-graphics

JS-graphics JS Canvas JS Plotly JS Chart.js JS Google-kaart JS D3.js

JS-voorbeelden

JS-voorbeelden JS HTML DOM JS HTML-invoer JS HTML-objecten JS HTML-evenementen JS-browser JS-editor JS-oefeningen JS-quiz JS-certificaat

JS-referenties

JavaScript-objecten HTML DOM-objecten


JavaScript -arrays

Een array is een speciale variabele die meer dan één waarde kan bevatten:

const cars = ["Saab", "Volvo", "BMW"];

Waarom een ​​array gebruiken?

Als je een lijst met items hebt (bijvoorbeeld een lijst met autonamen), kan het opslaan van de auto's in enkele variabelen er als volgt uitzien:

let car1 = "Saab";
let car2 = "Volvo";
let car3 = "BMW";

Maar wat als u door de auto's wilt bladeren en een specifieke wilt vinden? En wat als je niet 3 auto's had, maar 300?

De oplossing is een array!

Een array kan veel waarden onder één naam bevatten en u kunt toegang krijgen tot de waarden door te verwijzen naar een indexnummer.


Een array maken

Het gebruik van een letterlijke array is de gemakkelijkste manier om een ​​JavaScript-array te maken.

Syntaxis:

const array_name = [item1, item2, ...];      

Het is een gangbare praktijk om arrays te declareren met het sleutelwoord const .

Lees meer over const met arrays in het hoofdstuk: JS Array Const .

Voorbeeld

const cars = ["Saab", "Volvo", "BMW"];

Spaties en regeleinden zijn niet belangrijk. Een aangifte kan meerdere regels omvatten:

Voorbeeld

const cars = [
  "Saab",
  "Volvo",
  "BMW"
];

U kunt ook een array maken en vervolgens de elementen opgeven:

Voorbeeld

const cars = [];
cars[0]= "Saab";
cars[1]= "Volvo";
cars[2]= "BMW";

Het JavaScript-sleutelwoord nieuw gebruiken

In het volgende voorbeeld wordt ook een array gemaakt en worden er waarden aan toegewezen:

Voorbeeld

const cars = new Array("Saab", "Volvo", "BMW");

De twee bovenstaande voorbeelden doen precies hetzelfde.

Het is niet nodig om te gebruiken new Array().

Gebruik voor eenvoud, leesbaarheid en uitvoeringssnelheid de letterlijke array-methode.



Toegang tot array-elementen

U krijgt toegang tot een array-element door te verwijzen naar het indexnummer :

const cars = ["Saab", "Volvo", "BMW"];
let car = cars[0];

Opmerking: array-indexen beginnen met 0.

[0] is het eerste element. [1] is het tweede element.


Een array-element wijzigen

Deze instructie verandert de waarde van het eerste element in cars:

cars[0] = "Opel";

Voorbeeld

const cars = ["Saab", "Volvo", "BMW"];
cars[0] = "Opel";

Toegang tot de volledige array

Met JavaScript is de volledige array toegankelijk door te verwijzen naar de arraynaam:

Voorbeeld

const cars = ["Saab", "Volvo", "BMW"];
document.getElementById("demo").innerHTML = cars;

Arrays zijn objecten

Arrays zijn een speciaal soort objecten. De typeofoperator in JavaScript retourneert "object" voor arrays.

Maar JavaScript-arrays kunnen het best worden omschreven als arrays.

Arrays gebruiken nummers om toegang te krijgen tot de "elementen". In dit voorbeeld person[0] retourneert Jan:

Reeks:

const person = ["John", "Doe", 46];

Objecten gebruiken namen om toegang te krijgen tot de "leden". In dit voorbeeld person.firstName retourneert Jan:

Object:

const person = {firstName:"John", lastName:"Doe", age:46};

Array-elementen kunnen objecten zijn

JavaScript-variabelen kunnen objecten zijn. Arrays zijn speciale soorten objecten.

Hierdoor kunt u variabelen van verschillende typen in dezelfde array hebben.

U kunt objecten in een array hebben. U kunt functies in een array hebben. U kunt arrays in een array hebben:

myArray[0] = Date.now;
myArray[1] = myFunction;
myArray[2] = myCars;

Matrix-eigenschappen en -methoden

De echte kracht van JavaScript-arrays zijn de ingebouwde array-eigenschappen en -methoden:

cars.length   // Returns the number of elements
cars.sort()   // Sorts the array

Matrixmethoden worden in de volgende hoofdstukken behandeld.


De lengte Eigenschap

De lengtheigenschap van een array retourneert de lengte van een array (het aantal array-elementen).

Voorbeeld

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let length = fruits.length;

De lengtheigenschap is altijd één meer dan de hoogste matrixindex.


Toegang tot het eerste array-element

Voorbeeld

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fruit = fruits[0];

Toegang tot het laatste array-element

Voorbeeld

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fruit = fruits[fruits.length - 1];

Array-elementen in een lus

Een manier om door een array te lussen, is door een forlus te gebruiken:

Voorbeeld

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fLen = fruits.length;

let text = "<ul>";
for (let i = 0; i < fLen; i++) {
  text += "<li>" + fruits[i] + "</li>";
}
text += "</ul>";

U kunt ook de Array.forEach()functie gebruiken:

Voorbeeld

const fruits = ["Banana", "Orange", "Apple", "Mango"];

let text = "<ul>";
fruits.forEach(myFunction);
text += "</ul>";

function myFunction(value) {
  text += "<li>" + value + "</li>";
}

Array-elementen toevoegen

De eenvoudigste manier om een ​​nieuw element aan een array toe te voegen, is door de push()methode te gebruiken:

Voorbeeld

const fruits = ["Banana", "Orange", "Apple"];
fruits.push("Lemon");  // Adds a new element (Lemon) to fruits

Een nieuw element kan ook aan een array worden toegevoegd met behulp van de lengtheigenschap:

Voorbeeld

const fruits = ["Banana", "Orange", "Apple"];
fruits[fruits.length] = "Lemon";  // Adds "Lemon" to fruits

WAARSCHUWING!

Het toevoegen van elementen met hoge indexen kan ongedefinieerde "gaten" in een array creëren:

Voorbeeld

const fruits = ["Banana", "Orange", "Apple"];
fruits[6] = "Lemon";  // Creates undefined "holes" in fruits

Associatieve arrays

Veel programmeertalen ondersteunen arrays met benoemde indexen.

Arrays met benoemde indexen worden associatieve arrays (of hashes) genoemd.

JavaScript ondersteunt geen arrays met benoemde indexen.

In JavaScript gebruiken arrays altijd genummerde indexen .  

Voorbeeld

const person = [];
person[0] = "John";
person[1] = "Doe";
person[2] = 46;
person.length;    // Will return 3
person[0];        // Will return "John"

WAARSCHUWING !!
Als u benoemde indexen gebruikt, zal JavaScript de array opnieuw definiëren voor een object.

Daarna zullen sommige matrixmethoden en -eigenschappen onjuiste resultaten opleveren .

 Voorbeeld:

const person = [];
person["firstName"] = "John";
person["lastName"] = "Doe";
person["age"] = 46;
person.length;     // Will return 0
person[0];         // Will return undefined

Het verschil tussen arrays en objecten

In JavaScript gebruiken arrays genummerde indexen .  

In JavaScript gebruiken objecten benoemde indexen .

Arrays zijn een speciaal soort objecten, met genummerde indexen.


Wanneer arrays te gebruiken. Wanneer objecten gebruiken.

  • JavaScript ondersteunt geen associatieve arrays.
  • U moet objecten gebruiken als u wilt dat de elementnamen strings (tekst) zijn .
  • U moet arrays gebruiken als u wilt dat de elementnamen getallen zijn .

JavaScript nieuwe array()

JavaScript heeft een ingebouwde array-constructor new Array().

Maar u kunt in plaats daarvan veilig gebruiken [].

Deze twee verschillende instructies creëren beide een nieuwe lege array met de naam punten:

const points = new Array();
const points = [];

Deze twee verschillende instructies creëren beide een nieuwe array met 6 getallen:

const points = new Array(40, 100, 1, 5, 25, 10);
const points = [40, 100, 1, 5, 25, 10];

Het newtrefwoord kan enkele onverwachte resultaten opleveren:

// Create an array with three elements:
const points = new Array(40, 100, 1);
// Create an array with two elements:
const points = new Array(40, 100);
// Create an array with one element ???
const points = new Array(40);  

Een veel voorkomende fout

const points = [40];

is niet hetzelfde als:

const points = new Array(40);
// Create an array with one element:
const points = [40];
// Create an array with 40 undefined elements:
const points = new Array(40);  

Hoe herken je een array

Een veel voorkomende vraag is: Hoe weet ik of een variabele een array is?

The problem is that the JavaScript operator typeof returns "object":

const fruits = ["Banana", "Orange", "Apple"];
let type = typeof fruits;

The typeof operator returns object because a JavaScript array is an object.

Solution 1:

To solve this problem ECMAScript 5 (JavaScript 2009) defined a new method Array.isArray():

Array.isArray(fruits);

Solution 2:

The instanceof operator returns true if an object is created by a given constructor:

const fruits = ["Banana", "Orange", "Apple"];

fruits instanceof Array;

Complete Array Reference

For a complete Array reference, go to our:

Complete JavaScript Array Reference.

The reference contains descriptions and examples of all Array properties and methods.

Test Yourself With Exercises

Exercise:

Get the value "Volvo" from the cars array.

const cars = ["Saab", "Volvo", "BMW"];
let x = ;