From 16f790a9d9e6cd524feda769aebfb542328a1db6 Mon Sep 17 00:00:00 2001 From: "DESKTOP-P9VU163\\admin" Date: Wed, 2 Jul 2025 11:23:36 +0300 Subject: [PATCH] add beginner code with --- src/index.ts | 145 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 145 insertions(+) diff --git a/src/index.ts b/src/index.ts index cc27af2..3598dfc 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,3 +1,146 @@ +interface People { + name: string; + age: number | undefined; +} + +let people01: People = { + name: "Kostya", + age: undefined +}; + +let people02: People = { + name: "Yura", + age: 32 +} + +people01.age = 60; +// console.log(people01); +// console.log(JSON.stringify(people01)); +// console.log(people01.age); +console.log(`${people01.name} имеет возраст ${people01?.age ?? '40'}`); //Kostya --- 60 +console.log(`${people02.name} имеет возраст ${people02?.age ?? '40'}`); //Yura --- 32 +console.log(`${people01.name} имеет возраст ${people02?.age ?? '40'}`); + +interface PeopleLocation extends People { + location: string; +} + +let peopleLocation01: PeopleLocation = { + name: "djdf", + age: 42342, + location: "dafdf" +} +class ProcessingPeoples implements PeopleLocation { + name: string; + age: number | undefined; + location: string = ''; + + constructor(name: string){ + this.name = name; + } +} + +class ProcessingPeoplesExt extends ProcessingPeoples { + isActive: boolean = false; + + constructor(name: string, isActive: boolean){ + super(name); + if(isActive) { + this.location = 'Gorkyi street'; + } + else{ + this.location = ''; + } + } +} + +let a: ProcessingPeoples = new ProcessingPeoplesExt("Vasya", true); + +class Duck { + type: string = 'Duck'; + weight: number = 0; + log(){ + console.log("I'm simple duck"); + } +} + +interface Eateable { + eat(): void; +} + +class GreyDuck extends Duck implements Eateable{ + constructor() { + super(); + this.type = 'GreyDuck' + } + override log(){ + console.log("I'm grey duck"); + } + + eat(){ + console.log("I'm eat"); + } +} + +class RedDuck extends Duck implements Eateable { + constructor() { + super(); + this.type = 'RedDuck' + } + eat(): void { + console.log("I'm eat"); + } + override log(){ + console.log("I'm red duck"); + } +} + +let duck1 = new RedDuck(); +let duck2 = new GreyDuck(); + +let array: Eateable[] = [ + duck1, + duck2 +]; + +for (let item of array) { + item.eat(); +} + +let array2: Duck[] = [ + duck2, + duck1 +]; + +for (let item of array2) { + item.log(); +} + +array2.filter(item => "eat" in item); + + + + + + + + + + + + + + + + + + + + + + + + //Обучение ЦИКЛАМ //lesson 1.5 SUM OF NUMBERS @@ -41,6 +184,8 @@ function SUMMA (chislo: number){ let result = 5; console.log(`summa of numbre <1000: ${result}`); } + + /* function DrawLine(count: number, countP: number){ //рисуем треугольник из звездочек const minimalString = '*';