Array Snippets
Auf dieser Seite sind verschiedene JavaScript Snippets im Zusammenhang mit Arrays aufgeführt.
Diese sind so aufbereitet, dass sie im Terminal mit NodeJS ausgeführt werden können. Kopiere einfach das gewünschte Snippet und führe es bei dir lokal aus bzw. verwende es in deinem Projekt.
Inhaltsverzeichnis
Prüfen, ob ein Wert in Array ist
let myArray = [1, 2, 3, 4, 5];
let valueToCheck = 3;
let containsValue = myArray.includes(valueToCheck);
console.log(`Includes ${valueToCheck} ==> ${containsValue}`);
Element am Ende des Arrays einfügen
let myArray = [1, 2, 3, 4, 5];
let itemToInsert = 9;
myArray.push(itemToInsert);
console.log(`Array: ${myArray}`);
Array: 1,2,3,4,5,9
Maximalen numerischen Wert finden
function findMaxElement(arr) {
if (arr.length === 0) {
return "Empty array";
}
const maxElement = Math.max(...arr);
return maxElement;
}
const args = process.argv.slice(2);
if (args.length > 1) {
const numbers = args.map(i => parseInt(i));
const maxNumber = findMaxElement(numbers);
console.log("Array:", numbers);
console.log("Max element:", maxNumber);
} else {
console.log("Invalid amount of arguments");
}
Verwendung
node array_find_max_number.js 5 8 3 9 2
Array: [ 5, 8, 3, 9, 2 ]
Max element: 9
Zufälliges Element aus Array abrufen
let myArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
let randomIndex = Math.floor(Math.random() * myArray.length);
let randomItem = myArray[randomIndex];
console.log(`Random item: ${randomItem}`);
Random item: 5
Index(e) von einem Element finden
const args = process.argv.slice(2);
if (args.length === 1) {
let targetElement = parseInt(args[0]);
if (!isNaN(targetElement) && targetElement >= 0) {
let array = [2, 5, 9, 2, 5, 2];
let indices = [];
let idx = array.indexOf(targetElement);
while (idx != -1) {
indices.push(idx);
idx = array.indexOf(targetElement, idx + 1);
}
console.log(indices);
} else {
console.log("Invalid target element");
}
} else {
console.log("Invalid amount of arguments");
console.log("Provided:", args.length);
console.log("Expected: 1");
}
Verwendung
node array_find_all_indexes.js 2
[ 0, 3, 5 ]
Schnittmenge zwischen zwei Arrays
let arrayOne = [1, 2, 3, 4, 5];
let arrayTwo = [3, 4, 5, 6, 7];
let intersection = arrayOne.filter(v => arrayTwo.includes(v));
console.log("Intersection:", intersection);
Intersection: [ 3, 4, 5 ]
Letztes Element aus Array entfernen
let items = ["One", "Two", "Three"];
let deletedItem = items.pop();
console.log(deletedItem);
console.log(items);
Three
[ 'One', 'Two' ]
Letztes Element aus leerem Array entfernen
let emptyArray = [];
let deletedItem = emptyArray.pop();
console.log(deletedItem);
console.log(emptyArray);
undefined
[]
Bestimmtes Element aus Array entfernen
let originalArray = [1, 2, 3, 4, 5];
let itemToRemove = 3;
let indexToRemove = originalArray.indexOf(itemToRemove);
if (indexToRemove !== -1) {
originalArray.splice(indexToRemove, 1);
}
console.log(`Original array: ${originalArray}`);
Original array: 1,2,4,5
Array umkehren
const nums = [1, 2, 3, 4, 5];
const numsReversed = nums.reverse();
console.log(nums);
console.log(numsReversed);
console.log(nums === numsReversed);
[ 5, 4, 3, 2, 1 ]
[ 5, 4, 3, 2, 1 ]
true
Zeichenkette über ein Array umkehren
In nächsten Beispiel wird eine Zeichenkette über eine Umwandlung in ein Array umgekehrt.
function reverseString(str) {
return str.split('').reverse().join('');
}
console.log(reverseString("Hello"));
olleH
Erstes Element aus einem Array entfernen
Die Methode Array.shift()
gibt das entfernte Elemente zurück.
let items = [100, 200, 300, 400];
let deletedItem = items.shift();
console.log(deletedItem);
console.log(items);
100
[ 200, 300, 400 ]
Array in kleinere Teile aufbrechen
function chunkArray(array, chunkSize) {
let result = [];
for (let i = 0; i < array.length; i += chunkSize) {
result.push(array.slice(i, i + chunkSize));
}
return result;
}
let myArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
let chunks = chunkArray(myArray, 3);
console.log("Original:", myArray);
console.log("Chunks:", chunks);
Original: [
1, 2, 3, 4, 5,
6, 7, 8, 9, 10
]
Chunks: [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9 ], [ 10 ] ]
Beispiel - Spielkarten mischen
// Function - Creating standard deck of cards
function createDeck() {
const suits = ["Hearts", "Diamonds", "Clubs", "Spades"];
const ranks = ["2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King", "Ace"];
let deck = [];
for (let suit of suits) {
for (let rank of ranks) {
deck.push(`${rank} of ${suit}`);
}
}
return deck;
}
// Function - Shuffle deck of cards
function shuffleDeck(deck) {
for (let i = deck.length - 1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
[deck[i], deck[j]] = [deck[j], deck[i]];
}
}
// Create & display initial deck
const initialDeck = createDeck();
console.log("Initial deck");
console.log(initialDeck);
// Shuffle the deck
const shuffledDeck = [...initialDeck];
shuffleDeck(shuffledDeck);
console.log("\nShuffled deck");
console.log(shuffledDeck);
Initial deck
[
'2 of Hearts', '3 of Hearts', '4 of Hearts',
'5 of Hearts', '6 of Hearts', '7 of Hearts',
'8 of Hearts', '9 of Hearts', '10 of Hearts',
'Jack of Hearts', 'Queen of Hearts', 'King of Hearts',
'Ace of Hearts', '2 of Diamonds', '3 of Diamonds',
'4 of Diamonds', '5 of Diamonds', '6 of Diamonds',
'7 of Diamonds', '8 of Diamonds', '9 of Diamonds',
'10 of Diamonds', 'Jack of Diamonds', 'Queen of Diamonds',
'King of Diamonds', 'Ace of Diamonds', '2 of Clubs',
'3 of Clubs', '4 of Clubs', '5 of Clubs',
'6 of Clubs', '7 of Clubs', '8 of Clubs',
'9 of Clubs', '10 of Clubs', 'Jack of Clubs',
'Queen of Clubs', 'King of Clubs', 'Ace of Clubs',
'2 of Spades', '3 of Spades', '4 of Spades',
'5 of Spades', '6 of Spades', '7 of Spades',
'8 of Spades', '9 of Spades', '10 of Spades',
'Jack of Spades', 'Queen of Spades', 'King of Spades',
'Ace of Spades'
]
Shuffled deck
[
'8 of Spades', 'King of Clubs', '2 of Spades',
'Jack of Clubs', '10 of Hearts', '5 of Diamonds',
'Queen of Diamonds', '6 of Spades', 'Queen of Clubs',
'5 of Hearts', '8 of Diamonds', '4 of Spades',
'6 of Hearts', '9 of Spades', 'Ace of Hearts',
'3 of Clubs', 'Queen of Hearts', '3 of Diamonds',
'6 of Clubs', '2 of Clubs', '9 of Diamonds',
'3 of Spades', 'Jack of Spades', '5 of Spades',
'5 of Clubs', '4 of Hearts', '10 of Clubs',
'10 of Spades', 'Ace of Spades', 'Ace of Clubs',
'King of Diamonds', '8 of Hearts', 'Ace of Diamonds',
'3 of Hearts', '10 of Diamonds', '2 of Hearts',
'9 of Hearts', '7 of Spades', 'Jack of Diamonds',
'7 of Diamonds', 'King of Hearts', '4 of Clubs',
'Queen of Spades', '6 of Diamonds', '9 of Clubs',
'Jack of Hearts', '4 of Diamonds', '2 of Diamonds',
'King of Spades', '7 of Clubs', '8 of Clubs',
'7 of Hearts'
]