Vytvořte si obyčejnou stránku s JavaScriptem a zkopírujte si do ní následující pole dat. Budeme s nimi pracovat v následujících cvičeních.
const numbers = [15, 6, 70, 41, 33, 27, 8, 16, 98, 60, 56];
const names = ['Petr', 'Jana', 'Pavel', 'Zuzana', 'Eva', 'Adam', 'Onyx'];
const osoby = [
{ name: 'Petr', age: 16, gender: 'male' },
{ name: 'Jana', age: 8, gender: 'female' },
{ name: 'Pavel', age: 34, gender: 'male' },
{ name: 'Zuzana', age: 41, gender: 'female' },
{ name: 'Eva', age: 13, gender: 'female' },
{ name: 'Adam', age: 22, gender: 'male' },
{ name: 'Adam', age: 22, gender: 'male' },
{ name: 'Onyx', age: 37, gender: 'intersex' },
];
numbers. Napište tento cyklus ve staré formě for a v nové formě forEach.forEach napište cyklus, který vypíše do konzole poslední písmeno z každného jména v poli names.map vydělte všecha čísla v poli numbers třemi.map převeďte všechna čísla v poli numbers na řetězce.map vytvořte pole, ve kterém budou všechna jména z pole names zabalená do li tagu. Jméno Petr tak dopadne jako <li>Petr</li>.osoby a pomocí metody map vytvořte pro každou osobu email ve formátu petr@gmail.com.filter získejte z pole numbers pouze ta čísla, která jsou sudá.filter získejte z pole names pouze ta jména, která jsou delší než 4 znaky.filter získejte z pole osoby pouze dospělé lidi.filter získejte z pole osoby pouze dospělé muže.some zjistěte, jestli jsou v poli numbers nějaká čísla dělitelná 11.every zjistěje, jestli v poli osoby platí, že každá osoba je vždy buď muž nebo žena.'use strict';
const numbers = [15, 6, 70, 41, 33, 27, 8, 16, 98, 60, 56];
const names = ['Petr', 'Jana', 'Pavel', 'Zuzana', 'Eva', 'Adam', 'Onyx'];
const osoby = [
{ name: 'Petr', age: 16, gender: 'male' },
{ name: 'Jana', age: 8, gender: 'female' },
{ name: 'Pavel', age: 34, gender: 'male' },
{ name: 'Zuzana', age: 41, gender: 'female' },
{ name: 'Eva', age: 13, gender: 'female' },
{ name: 'Adam', age: 22, gender: 'male' },
{ name: 'Adam', age: 22, gender: 'male' },
{ name: 'Onyx', age: 37, gender: 'intersex' },
];
// 1
let soucet = 0;
for (let i = 0; i < numbers.length; i++) {
soucet += numbers[i];
}
const prumer = soucet / numbers.length;
console.log(prumer);
let soucet2 = 0;
numbers.forEach((number) => {
soucet2 += number;
});
const prumer2 = soucet2 / numbers.length;
console.log(prumer2);
// 2
names.forEach((name) => {
console.log(name[name.length - 1]);
});
// 3
const vydelTremi = numbers.map((number) => {
return number / 3;
});
console.log(vydelTremi);
// 4
const jakoRetezce = numbers.map((number) => {
return String(number);
});
console.log(jakoRetezce);
// 5
const namesList = names.map((name) => {
return `<li>${name}</li>`;
});
console.log(namesList);
// 6
const emaily = osoby.map((osoba) => {
return `${osoba.name.toLowerCase()}@gmail.com`;
});
console.log(emaily);
// 7
const sudaCisla = numbers.filter((number) => {
if (number % 2 === 0) {
return true;
}
return false;
});
console.log(sudaCisla);
// 8
const jmenaDelsiNez4 = names.filter((name) => {
if (name.length > 4) {
return true;
}
return false;
});
console.log(jmenaDelsiNez4);
// 9
const dospeli = osoby.filter((osoba) => {
if (osoba.age >= 18) {
return true;
}
return false;
});
console.log(dospeli);
// 10
const dospeliMuzi = osoby.filter((osoba) => {
if (osoba.age >= 18 && osoba.gender === 'male') {
return true;
}
return false;
});
console.log(dospeliMuzi);
// 11
const obsahujeDelitelne11 = numbers.some((number) => {
if (number % 11 === 0) {
return true;
}
return false;
});
console.log(obsahujeDelitelne11);
const kazdyBudMuzNeboZena = osoby.every((osoba) => {
if (osoba.gender === 'male' || osoba.gender === 'female') {
return true;
}
return false;
});
console.log(kazdyBudMuzNeboZena);
Založte si JavaScriptový program a vložte do něj následujicí datovou strukturu představující seznam úkolů. Každý objekt obsahuje tyto položky
name - název úkolu,due - za jak dlouho má být úkol splněn,notify - jako dlouho předem se má úkol připomenout,done - jestli už byl úkol splněn.Nad datovou strukturou uvedenou výše proveďte následující úkony.
'use strict';
const tasks = [
{
name: 'Vyprat košile',
due: {
time: 3,
unit: 'day',
},
notify: {
time: 1,
unit: 'day',
},
done: false,
},
{
name: 'Nakoupit na nedělní oběd',
due: {
time: 2,
unit: 'day',
},
notify: {
time: 6,
unit: 'hour',
},
done: false,
},
{
name: 'Zopakovat si funkce vyšších řádů',
due: {
time: 8,
unit: 'hour',
},
notify: {
time: 30,
unit: 'minute',
},
done: true,
},
{
name: 'Dát výpověď v práci',
due: {
time: 14,
unit: 'day',
},
notify: {
time: 4,
unit: 'day',
},
done: false,
},
{
name: 'Jít si zaběhat',
due: {
time: 2,
unit: 'day',
},
notify: {
time: 1,
unit: 'hour',
},
done: true,
},
];
// 1
const nazvyUkolu = tasks.map((task) => {
return task.name;
});
console.log(nazvyUkolu);
// 2
const splneneUkoly = tasks.filter((task) => {
return task.done;
});
console.log(splneneUkoly);
// 3
const do3Dnu = tasks.filter((task) => {
if (task.due.unit === 'day' && task.due.time <= 3) {
return true;
}
if (task.due.unit === 'hour' && task.due.time <= 3 * 24) {
return true;
}
return false;
});
console.log(do3Dnu);
// 4
const jeVseDo3DnuSplnene = do3Dnu.every((task) => {
return task.done;
});
console.log(jeVseDo3DnuSplnene);