Skip to main content

understanding interface in typescript

1. interface is one of most important part of typescript they contain  properties function or event but only definition.



work code example->https://stackblitz.com/edit/typescript-gzh1np

example of interface is=>
//understanding interface in typescript
//a interface can be used liked a object in js
//for example
interface user
{
//string typer property
name:string,
//number type property
age:number
//string type property
occupation:string;
//height can be string or number :)
height:string|number
}
//create a instance of user
var manish:user={
name:"manish chauhan",
age:27,
occupation:"game developer",
height:30

}
//access a property
console.log(manish.name);
//example2------------------------------------------------>>
//interface can be nested for example suppose for example
//suppose a group of student from different class
interface student
{
studentName:string,
studentAge:number,
//student class can be string or number
studentClass:string|number,
//and optional parameter declare in a interface like below
dressCode?:string
}
//now student group which contain differnt class student
interface group
{
groupName:string,
group:student[]
}

//now there can a serval group inside one school so we create one more interface which contain holds all groups of one school
interface school
{
schoolName:string,
groups:group[];
}
//now solve this problem using nested interface

var myschool:school={
schoolName:"apj schoool",
groups:[
//first group
{
groupName:"apple group",
group:[
{
studentName:"manish rawat",
studentAge:18,
studentClass:"12"
} ,
{
studentName:"seema",
studentAge:18,
studentClass:"11"
},
{
studentName:"rahul",
studentAge:17,
studentClass:"11"
}
]
},
{
groupName:"mango group",
group:[
{
studentName:"jeet",
studentAge:18,
studentClass:"12"
} ,
{
studentName:"reena",
studentAge:18,
studentClass:"11"
},
{
studentName:"monu",
studentAge:17,
studentClass:"11"
}
]
}

]


}

//access any student
const student=myschool.groups[0].group[0];
console.log(student.studentName);
//access all student
//loop each group
myschool.groups.forEach((value,index)=>
{
//loop each group
value.group.forEach((subvalue,subindex)=>
{
//get each student value from each group
console.log(subvalue);
}
)
}
)
//using interface as a part of a class we can define all required function for a class
//class--------------------------
interface userInterFace
{
login(userName:string,password:student),
register(userName:string,password:student),
update(userId:number),
delete(userId:number)
}

class NewUser implements userInterFace
{
constructor()
{

}
login(userName:string,password:student)
{

}

register(userName:string,password:student)
{
}
update(userId:number)
{

}
delete(userId:number)
{

}
}
var x=new NewUser();
//x.update(2);  

Comments

Popular posts from this blog

Creating a word Scramble game where you can drag and drop the word and create a complete word. (drag and drop word Scramble game).

Creating a word game using  phaser game engine which is a javascript based gaming engine  where u can drag and drop world like Word Scramble Game and complete a given word. your index.html file look like below < html > < head > < script src = "src/phaser.min.js" ></ script > < script src = "src/wordGame.js" ></ script > < script src = "src/main.js" ></ script > </ head > < body > </ body > </ html > 1.    <script src="src/phaser.min.js"></script> required to run the  phaser game engine. 2. rest of the two files deals with game logics      <script src="src/wordGame.js"></script>       <script src="src/main.js"></script> you can download whole project from https://github.com/manishchauhan/wordgame/tree/master just copy and paste the project in your local server and run ...

starting with three.js and react with a very simple example

 1. three.js is undoubtedly the best library to create interactive content for the web in 3d. link https://threejs.org/ a working sample of three with react can be found below https://stackblitz.com/edit/react-7n5qf9?file=src%2FApp.js why choose threejs 1. lightweight  2.fast 3.big community  https://discourse.threejs.org/ 4. even you can use unity or unreal to publish html5 content but i don't think that would be acceptable in many cases. 5. open-source project. i created a running sample with React  https://stackblitz.com/edit/react-7n5qf9?file=src%2FApp.js

A simple binary search tree with generic approach tree can store any type of data. (DFS and BFS)

 1. a binary search tree in c++ using a generic approach with both BFS and DFS approach    working tree    https://www.onlinegdb.com/edit/HkuQLdA-w code=> some properties of binary search tree-> 1. binary search tree is not always a balanced tree.  2. Inorder, traversing gives you sorted data.  3.  best is o(log n) and worst is O(n).  4. left node data is always less than root data and right node data always be greater than root data.  5. red-black tree STL map is a balanced binary search tree. *******************************************************************************/ #include <stdio.h> #include<iostream> #include<queue> using namespace std; template < typename T > class Node {   //can store any type of data private:   //genric data or store any type of data   T data;   //reference of left pointer   Node *left = nullptr;   //reference of right pointer   Node *rig...