Nutnost: Callback JS
Pole (Arrays)
Pole slouží k ukládání více hodnot do jedné proměnné.
Vytvoření pole
let cisla = [1, 2, 3, 4];
let jmena = ["Jan", "Eva", "Petr"];Přístup k prvkům
Indexování začíná od 0.
let jmena = ["Jan", "Eva", "Petr"];
console.log(jmena[0]); // Jan
console.log(jmena[1]); // EvaZměna hodnoty
jmena[0] = "Karel";Délka pole
console.log(jmena.length);Přidání prvku
Na konec:
jmena.push("Lucie");Na začátek:
jmena.unshift("Tomáš");Odebrání prvku
Z konce:
jmena.pop();Ze začátku:
jmena.shift();Procházení pole (for loop)
for (let i = 0; i < jmena.length; i++) {
console.log(jmena[i]);
}Moderní procházení (for…of)
for (let jmeno of jmena) {
console.log(jmeno);
}Časté metody
jmena.includes("Jan"); // true / false
jmena.indexOf("Eva"); // index nebo -1Tvorba mergováním dvou listů
const programmingLanguages = ["JavaScript", "Python", "C++"];
const newList = programmingLanguages.concat("Perl");
console.log(newList); // ["JavaScript", "Python", "C++", "Perl"]Join
const reversedArray = ["o", "l", "l", "e", "h"];
const reversedString = reversedArray.join("");
console.log(reversedString); // "olleh"map() – úprava pole
Autor: brocode https://www.youtube.com/watch?v=xNQH1NbZQ0E Příjmá callback a praktikuje funkci pro každý element, vrací nový array
const num = [1,2,3];
const sqnum.map(square);
function square(element){
return element*element
}filter() – filtrování
Autor: Brocode
let num = [1,2,3];
const isEven = (element) => {
return element%2 === 0;
}
let even = num.filter(isEven);For Each
Autor: Brocode
let numbers = [1,2,3]
const display = (elements) => {
console.log(element)
}
numbers.forEach(display)
// 1,2,3Reduce
Autor Brocode https://www.youtube.com/watch?v=iDWtuWkuj8g
const prices = [1, 2, 3];
function sum(acc, ele) {
// Toto je callback funkce
return acc + ele;
}
// Tady říkáš: "Hej, reduce, vezmi tuhle moji funkci 'sum' a zavolej ji pro každý prvek v poli."
const total = prices.reduce(sum, 0);const prices = [1, 2, 3];
let total = 0;
for (const price of prices) {
total += price;
}
console.log(total);Vlastní metody
Mějme nějakou funkci
let expect = function(val) {
return // tady jsou metody
};let expect = function(val) { // <--- TADY JE TA BUBLINA
return {
// klíč: hodnota
}
};
};let expect = function(val) {
return {
return5: 5,
consoleme: function(){
console.log("me");
},
writeme: function(){
console.log(val);
},
writearray: function(){
function display(elements){
console.log(element);
}
numbers.forEach(display);
}
};
};