added today's work
This commit is contained in:
98
24_11_05/feladat3.js
Normal file
98
24_11_05/feladat3.js
Normal file
@@ -0,0 +1,98 @@
|
||||
class Termek{
|
||||
constructor(nev, ar, mennyiseg, azonosito){
|
||||
this.nev = nev;
|
||||
this.ar = ar;
|
||||
this.mennyiseg = mennyiseg;
|
||||
this.azonosito = azonosito;
|
||||
}
|
||||
|
||||
adatok(){
|
||||
return `Név: ${this.nev}\nÁr:${this.ar}\nMennyiség: ${this.mennyiseg}\nAzonosító: ${this.azonosito}`;
|
||||
}
|
||||
}
|
||||
|
||||
class Elelmiszer extends Termek{
|
||||
static elelmiszerSzam = 0;
|
||||
constructor(nev, ar, mennyiseg, azonosito, szavatossagiIdo){
|
||||
super(nev, ar, mennyiseg, azonosito);
|
||||
this.szavatossagiIdo = szavatossagiIdo;
|
||||
Elelmiszer.elelmiszerSzam++;
|
||||
}
|
||||
|
||||
adatok(){
|
||||
return `Név: ${this.nev}\nÁr:${this.ar}\nMennyiség: ${this.mennyiseg}\nAzonosító: ${this.azonosito}\nSzavatossági idő: ${this.szavatossagiIdo}`;
|
||||
}
|
||||
|
||||
static osszesElelmiszer(){
|
||||
return Elelmiszer.elelmiszerSzam;
|
||||
}
|
||||
}
|
||||
|
||||
class ElektronikaiTermek extends Termek{
|
||||
static elektronikaSzam = 0;
|
||||
constructor(nev, ar, mennyiseg, azonosito, garancia){
|
||||
super(nev, ar, mennyiseg, azonosito);
|
||||
this.garancia = garancia;
|
||||
ElektronikaiTermek.elektronikaSzam++;
|
||||
}
|
||||
|
||||
adatok(){
|
||||
return `Név: ${this.nev}\nÁr:${this.ar}\nMennyiség: ${this.mennyiseg}\nAzonosító: ${this.azonosito}\nGarancia: ${this.garancia}`;
|
||||
}
|
||||
|
||||
static osszesElektronikaiTermek(){
|
||||
return ElektronikaiTermek.elektronikaSzam;
|
||||
}
|
||||
}
|
||||
|
||||
class Raktar{
|
||||
constructor(termekek){
|
||||
this.termekek = termekek;
|
||||
}
|
||||
|
||||
hozzaadTermek(termek){
|
||||
this.termekek.push(termek);
|
||||
}
|
||||
|
||||
eltavolitTermek(azonosito){
|
||||
for (let index = 0; index < this.termekek.length; index++) {
|
||||
if (this.termekek[index].azonosito == azonosito){
|
||||
this.termekek = removeItem(this.termekek, this.termekek[index]);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
keszletKimutatas(){
|
||||
this.termekek.forEach(element => {
|
||||
console.log(element.adatok());
|
||||
});
|
||||
}
|
||||
|
||||
keresTermek(nev){
|
||||
for (let index = 0; index < this.termekek.length; index++) {
|
||||
if (this.termekek[index].nev == nev){
|
||||
console.log(this.termekek[index].adatok());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function removeItem(array, itemToRemove) {
|
||||
let index = array.indexOf(itemToRemove);
|
||||
|
||||
let newArr = index !== -1 ?
|
||||
[...array.slice(0, index), ...array.slice(index + 1)] : fruits;
|
||||
|
||||
return newArr;
|
||||
}
|
||||
|
||||
let iphone = new ElektronikaiTermek("IPHONE", 160000, 1, 120, 2);
|
||||
let alma = new Elelmiszer("alma", 150, 500, 420, 2);
|
||||
|
||||
let array = new Array(iphone, alma);
|
||||
|
||||
let raktar = new Raktar(array);
|
||||
raktar.keszletKimutatas();
|
||||
Reference in New Issue
Block a user