Thanks for sharing the video. Feel free to ask any doubt here, I will try to answer them. Also, I am on my way to contribute more videos to #freecodecamp Stay tuned
Yes! We can push elements to read-only properties having type array; because arrays are not explicitly represented, but only by their memory address. So, technically we are not changing the memory address of array by pushing elements inside it, and READONLY still validates upon the address of the array.
Just finished the tutorial. Hitesh is a wonderful teacher. I enjoyed from start to finish. I would definitely recommend this tutorial to anyone looking to not only understand Typescript, but also how to read and understand documentations.
Enums stands for Enumerations. Enums are a new data type supported in TypeScript. It is used to define the set of named constants, i.e., a collection of related values. TypeScript supports both numeric and string-based enums
To my experience, Enums are the perfect balance between having to create an entire class for passing some data in a readable manner, and passing raw data (like numbers) to represent a certain meaning which you have in mind, which makes the code less readable and maintainable That being said, I am a C# developer and just starting out with typescript, but i assume the benefits apply here as well
Damn. Back in the days when I was learning coding I learned alot of Hitesh. Thank you very much for the helpful content. Time to learn TypeScript from this chad again. ✨
Hey, thank you for the course, but I think you might be wrong at 1:18:30 You create a function "createUser", that takes in object with "name" and "isPaid" properties. But instead of giving them a type, you destructuring the object and reassigning "name" to "string" and "isPaid" to "boolean", But object itself still has "any" type! function createUser({ name: string, isPaid: boolean }) {} Same as: function createUser({ name: string, isPaid: boolean }: any) {} Almost same as: function createUser({ name, isPaid }) { ---> type is still "any" const string = name const boolean = isPaid } I think you wanted to to something like this instead: function createUser({ name, isPaid }: { name: string, isPaid: boolean }) {} Or this: type User = { name: string, isPaid: boolean } function createUser({ name, isPaid }: User) {} Y'all can try to code this in typescript playground, if you don't believe me www.typescriptlang.org/play Info about Destructuring assignment (from MDN): developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment I hope it will help someone to feel less confused in this tough topic
Huh glad you took the time to write this comment clarifying that, I was replicating what he did in Typescript playground and it was erroring, I then I asked ChatGPT what was wrong with the function and the response was basically changing the structure of the function to how you have done it in your comment. Thanks for doing that good man!
thanks for exaplanation but what's the difference? I can still do this function createUser2({ name, isPaid }: { name: string; isPaid: boolean }) {} let sampleData ={ name: "John", isPaid: true , age: 25} createUser2(sampleData)
I recently finished a Typescript course and wanted to thank the instructor for such an informative and helpful tutorial. As a beginner, I was able to easily follow along and understand the concepts thanks to the clear explanations and examples provided. I feel much more confident in my ability to use Typescript in my projects now. Thank you for your hard work and for sharing your knowledge with others!
@@nitilpoddar to be honest i haven't applied for any typsecript related job but this video helped m in my current company as our projects are shifting to adonis framework which uses typescript
I learned JS as my first language and C# as my 2nd. TS is basically a combination of the two, and in a good way. Great series and you're an awesome teacher Hitesh!
In JS, the array type (object type) is the reference type. This means that the variable store the reference (address) of the array or object instead of its value. So when you manipulate an array or object, the variable doesn't change because it always equals the address of the array in memory. Const and "readonly property" only ensure that variables do not change
The flow of the tutorial was really great. Each topic is discussed very appropriately. And the approach to make the people read documentation is splendid and seen for the first time any instructor emphasizing upon it. Looking forward to a similar comprehensive course on Next.js and prerequisite for it from the same instructor if possible.
Thank you @Hitesh for creating a very easy-to-understand course. This is the 1st time I have seen approx 5 hours video tutorial and have not skipped a single part. This was on my todo watchlist for a very long time.
I was wanting to start learning typescript. Randomly I started today anyway and from google then freecode got over there and started with the course. 1/3rd is done. Great until now and will resume. I noticed that this was uploaded just a day ago so I believe my luck wanted me to wait so that I can learn from you. Thanks
if someone was struggling with it - seems like in newer versions of typescript it might be crucial to define the argument name when trying to annotate types for a function object argument input: example: function createUser(user: {name: string, email: string, isPaid: boolean}) instead of: function createUser({name: string, email: string, isPaid: boolean}) at least what I got when trying to follow along - the code editor and it's typescript checker seemed to treat the latter definition as if I was destructuring the argument, not type-annotating it.
i have completed this series today within 4-5 days and gained lot of knowledge required to get start with typescript thanks hitesh sir for the helpful knowledge it was a great run
Just right now i am at 4:42:56 and i am getting a very positive feeling i have learn a lot from this video , words cannot describe how great learning experience was . Thank you very much sir
I swear this is the best tutorial of TYPESCRIPT i've ever seen. I've got 2 udemy popular courses on UDEMY, but this is far more understandable and straight to the point explanation. thank you @hitesh
I was actually looking for a typescript tutorial since 2 days. Started many but then saw your post on Linkedin. I hope it will be a good one. Starting now
You are an awesome teacher Hitesh Choudhary . Clear communication , well explained. first time looking at your learning series. very well explained on basics concepts . looking forward to learn from your tutorials.
Completed the entire video and I am very thankful to the instructor for covering the topics with good instructions and examples. Loved it and can't wait to implement typescript on some projects, Cheers 🥂👩💻
my timestamps: 2:24:03 (thursday/wednesday) 3:15:25 (friday) 3:19:36 (saturday) 4:07:16 (sunday) FINISHED! (monday) hope you guys can do it too :) good luck!
Beautifully explained, Hitesh, thank you so much. As a beginner I find so useful to be able to learn not only theory but also how it actually works in practice and most common mistakes we can make. This was amazing! 👏👏👏👏👏
The main difference between void and never is that void: even when we dont write explicit return in functions, it returns undefined by default. That's the default behaviour of javascript. never: would mean that you are doing something in function that will never let the "return" happen. Like throwing an error. Would mean that the default return undefined also wouldn't happen here.
🎯Course outline for quick navigation: [00:00-21:43]1. Typescript and its importance -[10:40-11:09]Typescript allows transpiling typescript code into javascript for building components like react, using .tsx extension. -[15:04-15:40]Typescript is a development tool dependent on javascript. setting up an environment to write typescript will be covered in the next video. -[17:00-17:58]Focus on core system wide typescript installation and project configuration for better code production. -[20:22-20:52]Installed typescript using sudo command, quick and simple process. [21:43-46:57]2. Typescript in vs code and its basics -[27:24-27:53]Hitesh introduces typescript series, starts slow, picks up pace later. -[37:47-38:14]Collaborators can benefit from safety features in code, preventing errors like 'property touppercase does not exist on type number'. -[39:18-39:51]Vaish introduces a new video on typescript series, focusing on best practices and covering numbers, booleans, strings, and type inference. -[41:46-42:12]Javascript has limited number-related methods, like toexponential and tolocalestring. -[44:48-45:15]Using typescript for better code, it detects and prevents errors, ensuring type safety. -[46:26-46:57]Tutorial on typescript, emphasizing colons and types, urging 70 non-subscribers to subscribe. [46:57-01:01:02]3. Typescript best practices -[57:40-58:10]During user sign up, name, email, and password are requested, but they are marked as 'any' type. -[01:00:16-01:00:51]Discussing passing default values for email and paid in a simple string and boolean format, without encountering any complaints. [01:01:02-01:14:52]4. Typescript syntax, benefits, and functions overview -[01:03:16-01:03:44]Typescript emphasizes philosophy of type usage, enhancing javascript. -[01:03:47-01:04:14]Returning 'hello' instead of a number, a concern for team collaboration. -[01:06:43-01:07:11]Introduction to handling multiple return types in typescript, using union types, to be discussed in a separate video. [01:14:52-01:53:31]5. Understanding typescript fundamentals -[01:27:47-01:28:22]Creating a simple function to define and enforce user data types in typescript. -[01:31:30-01:31:56]Simplify function definitions to avoid lengthy and complex code. -[01:38:21-01:38:46]Working on typescript config to stop producing code. mention of credit cards. [01:53:32-02:14:12]6. Typescript union, literal types, and tuples -[01:55:22-01:55:51]Typescript allows using multiple types of data, such as 334, without causing errors, making it really useful. -[01:59:26-01:59:54]The code is being checked for lower case and string verification at line number 30. -[02:05:20-02:05:53]Tuples in typescript are useful but with limitations. caution advised based on stack overflow thread. -[02:07:29-02:07:58]Converting data into a tuple, including string, number, and boolean types. -[02:13:04-02:13:51]In a javascript article on stack overflow, a user discusses issues with typescript array push method not handling tuple type arrays, which was posted a year and 11 months ago. [02:14:13-02:38:48]7. Typescript enums, interfaces, and methods -[02:15:24-02:15:52]Enums restrict choices in e-commerce orders, e.g., wish list, delivered, shipped, returned. -[02:27:49-02:28:17]Read-only fields, like a db id, should be numbers, not optional, and filled in. the advantage is similar to past studies. -[02:29:21-02:29:50]Method must be compulsory and return a string, such as 'trial started.' -[02:34:43-02:35:16]Integrating a library from github can require adding missing interfaces and files. -[02:35:39-02:36:08]Adding a github token as a string property and accessing functionality through declared variable or constant is a typescript feature loved by many. -[02:36:33-02:36:58]Using 'extends' keyword to inherit properties and defining roles for admin. -[02:37:35-02:38:03]Using interfaces in typescript allows for easy extension and inheritance, but caution is needed to avoid conflicts with installed packages or libraries. [02:38:49-02:53:12]8. Typescript basics, production setup, and node project -[02:40:21-02:48:59]Creating and configuring a typescript project for production, including typescript compiler and output directory setup. -[02:51:45-02:52:11]Set up lite server in package.json and enable watch mode for typescript changes. -[02:52:28-02:52:56]Using 'live server' for web development rather than a light server, as it is more efficient and requires no additional packages. [02:53:12-03:13:03]9. Typescript classes and setup -[02:53:51-02:54:17]Late night video session discussing setting up a typescript server for file generation and production-grade server for writing typescript. -[03:06:53-03:07:24]Choosing to make all items public, reflecting syntactic sugar in professional coding practices. -[03:07:50-03:08:22]Introduction to getters and setters in javascript, discussing private methods and syntax. -[03:08:42-03:09:14]Using getters and setters to access and manipulate data in software development. [03:13:03-03:26:37]10. Typescript classes, interfaces, and usage -[03:15:28-03:15:55]Access modifiers in programming restrict property access. -[03:21:25-03:21:54]The interface will include additional properties such as a filter and photo burst mode. it will be the basis for the entire application. [03:26:37-04:08:23]11. Typescript abstract classes and generics -[03:31:56-03:34:49]Creating an advanced class with properties, implementing abstract methods, and utilizing typescript features. -[03:43:04-03:43:28]Defining specific data types and return values, including 'any' type. -[03:48:32-03:49:01]Learning to use arrow functions in typescript, exploring documentation examples. -[03:49:23-03:49:55]The video discusses defining arrays with possible cases and confusion in building them. -[04:00:07-04:00:32]Function expects numeric values, but problem arises with strings. [04:08:23-04:46:24]12. Typescript type narrowing and discriminated unions -[04:27:42-04:28:07]Code involves checking if a method is not undefined, then returning pet as a fish. -[04:36:12-04:36:38]Creating a function to determine true shape from circle or square. -[04:38:40-04:39:15]Code review with exhaustive check, only two cases. -[04:39:27-04:39:52]New payment status 'authorized' introduced, alongside 'captured' and 'refunded'. -[04:45:58-04:46:21]Encouraging support for sharing and enjoying the series. offered by Coursnap
1. The primitives a. string b. number c. boolean d. bigint e. symbol 2. Arrays 3. Any - noImplicitAny 4. Object 5. Union 6. Interface 7. Literal 8. null 9. undefined 10. Enum
Hi 70% of people who are watching haven't subscribed to this channel . LMAO!! guys tbh He deserves to be subscribed ! go and kill the button. superb effort !!
This is a good lesson. It demystifies the difference between typescript and JavaScript. I am much more confident to learn other web technology after watching this wonderful video.
For 43:30, keep in mind that there ARE cases where type inference is bad and you'll want to be type explicit. One such case is when the code gets complex enough that to figure out what type it should be requires hunting through multiple files, in this case explicitly typing is a good idea to prevent a change many files away from breaking your code (without throwing error at compilation). There are other cases, too. So it is generally preferred, but not required, to avoid explicit typing. You will usually know when that is the case.
If you are using vs code terminal in Windows use yarn or npm before tsc tsc intro.ts -- Wrong one yarn tsc intro.ts -- Wright one npm tsc intro.ts -- Wright one
Tuples work fine when you set their types as string and number. However, if you try to push a Boolean value into the first index, TypeScript does not allow it. but If you keep the value at the zero index as a string, it is possible to push a number into the tuple.
Thanks for sharing the video. Feel free to ask any doubt here, I will try to answer them. Also, I am on my way to contribute more videos to #freecodecamp
Stay tuned
❤️
Keep publishing such amazing content❤️
#women_life_freedom
#برای
❤️thnx Hitesh
Sab
After this course I learned that 70% of viewers are not subscribers and we shall hit the subscribe button. Thank you Hitesh
What about Typescript? Didn't you learn that? 😅
@@manan09ful no 😀
Hahaha. So true. I’m gonna go subscribe now. Like 20 times.
😂😂😂 Exactly, too.much self advertising
This is amazing typescript series I love it❤❤
Hitesh Choudhary is one of my favorite teachers who makes complex topics into simple. Great to see Hitesh here 😃
Finally i found you 😂😂 you are so famous Yarr 😂😂
@@aarooral7997 how 🤔
@@Viralvlogvideos i know you from fsjs bro
@@aarooral7997 What's fsjs?
Yes! We can push elements to read-only properties having type array; because arrays are not explicitly represented, but only by their memory address. So, technically we are not changing the memory address of array by pushing elements inside it, and READONLY still validates upon the address of the array.
Just finished the tutorial. Hitesh is a wonderful teacher. I enjoyed from start to finish. I would definitely recommend this tutorial to anyone looking to not only understand Typescript, but also how to read and understand documentations.
Po 😊😊😅😊
Enums stands for Enumerations. Enums are a new data type supported in TypeScript. It is used to define the set of named constants, i.e., a collection of related values. TypeScript supports both numeric and string-based enums
To my experience, Enums are the perfect balance between having to create an entire class for passing some data in a readable manner, and passing raw data (like numbers) to represent a certain meaning which you have in mind, which makes the code less readable and maintainable
That being said, I am a C# developer and just starting out with typescript, but i assume the benefits apply here as well
Damn. Back in the days when I was learning coding I learned alot of Hitesh. Thank you very much for the helpful content. Time to learn TypeScript from this chad again. ✨
nostalgia hits
Hey, thank you for the course, but I think you might be wrong at 1:18:30
You create a function "createUser", that takes in object with "name" and "isPaid" properties.
But instead of giving them a type, you destructuring the object
and reassigning "name" to "string" and "isPaid" to "boolean",
But object itself still has "any" type!
function createUser({ name: string, isPaid: boolean }) {}
Same as:
function createUser({ name: string, isPaid: boolean }: any) {}
Almost same as:
function createUser({ name, isPaid }) { ---> type is still "any"
const string = name
const boolean = isPaid
}
I think you wanted to to something like this instead:
function createUser({ name, isPaid }: { name: string, isPaid: boolean }) {}
Or this:
type User = { name: string, isPaid: boolean }
function createUser({ name, isPaid }: User) {}
Y'all can try to code this in typescript playground, if you don't believe me
www.typescriptlang.org/play
Info about Destructuring assignment (from MDN):
developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
I hope it will help someone to feel less confused in this tough topic
Huh glad you took the time to write this comment clarifying that, I was replicating what he did in Typescript playground and it was erroring, I then I asked ChatGPT what was wrong with the function and the response was basically changing the structure of the function to how you have done it in your comment. Thanks for doing that good man!
thank you for your explaination
I spent half hour on this before I started wondering if someone highlighted this in the comments. Thanks man, great explanation
❤
thanks for exaplanation but what's the difference?
I can still do this
function createUser2({ name, isPaid }: { name: string; isPaid: boolean }) {}
let sampleData ={ name: "John", isPaid: true , age: 25}
createUser2(sampleData)
I recently finished a Typescript course and wanted to thank the instructor for such an informative and helpful tutorial. As a beginner, I was able to easily follow along and understand the concepts thanks to the clear explanations and examples provided. I feel much more confident in my ability to use Typescript in my projects now. Thank you for your hard work and for sharing your knowledge with others!
were you able to get some jobe or internship after this?
Did you learn JavaScript first?
@@nitilpoddar to be honest i haven't applied for any typsecript related job but this video helped m in my current company as our projects are shifting to adonis framework which uses typescript
@@unuefeejovwoke6609 yes
@@haseebsheikh6101 so can't I learn without knowing much on JavaScript? I'm a python developer and wanna learn typescript
I learned JS as my first language and C# as my 2nd. TS is basically a combination of the two, and in a good way. Great series and you're an awesome teacher Hitesh!
u are ryt bro
What is Ienumerator equivalent in typescript.. I used it alot in my unity games
I mean, yeah, writing "Hello, World!" is pretty much the same
Lol,I think you don't know C#,otherwise you wouldn't say that
He is a great teacher indeed
What an amazing teacher, honestly. So eloquent and to the point.
I wasn't even intending to learn this, but i was literally sucked into it! Good flow!
1:36:38 yes, we could manipulate with it (do .push() or change the value of certain elements) but we cannot replace that array with another array.
does "const" have to do with that?
@@rnsanyo I am not sure about the background logic (how TS works behind the curtain) but "readonly property" behaves exactly like a "const" does.
In JS, the array type (object type) is the reference type. This means that the variable store the reference (address) of the array or object instead of its value. So when you manipulate an array or object, the variable doesn't change because it always equals the address of the array in memory. Const and "readonly property" only ensure that variables do not change
I think you were going to destroy world
Hitesh is one of my favourite instructors on the internet, it's a great feeling to see him on this channel
The flow of the tutorial was really great. Each topic is discussed very appropriately. And the approach to make the people read documentation is splendid and seen for the first time any instructor emphasizing upon it.
Looking forward to a similar comprehensive course on Next.js and prerequisite for it from the same instructor if possible.
Thank you @Hitesh for creating a very easy-to-understand course. This is the 1st time I have seen approx 5 hours video tutorial and have not skipped a single part. This was on my todo watchlist for a very long time.
One of the best comprehensive tutorials I have watched in TH-cam!
I've been thinking about learning it since many weeks and you guys released it at the right time 😍
Hey i know this guy and I follow his channel also. He explains things greatly. Thanks for featuring him in the ts course.
What's his channel?
ok its in description box. Hitesh Chaudhary
Thanks
@@HiteshCodeLab please make a video on how to make photo album using nextjs and strapi...
bro please bring more indian teachers, they are so clear and accurate
are u tryna be funny?
@@wovasteengova nah they really are the best once you get used to the accent
True!
a project with TypeScript + React + ReduxToolkit that would be a good tutorial
@@manofsteelind So after this tutorial you say I will not know typescript fully?
@@manofsteelind You become a typescript expert by writing apps, if I am writing my apps with react, so how should I become expert then?
@@martapfahl940 you can use TS instead of JS in your react app for TS practice
one of the best instructor out there, props to hitesh sir, his js series was exceptionally good
This was an amazing tutorial - really enjoyed it from start to finish. Thanks Hitesh!
hiyteshy chowdary , ok 😆 , This is what i needed 😊😊
I was having difficulty grasping the basics from other sites. I am glad to have stumbled upon this. Super progressive explanations
Hitesh Sir on freeCodeCamp rocking 😍😍🔥🔥🔥🔥
When it comes to high quality tutorials, Hitesh is always on top in my list 🔥😎🙌
I was wanting to start learning typescript. Randomly I started today anyway and from google then freecode got over there and started with the course. 1/3rd is done. Great until now and will resume. I noticed that this was uploaded just a day ago so I believe my luck wanted me to wait so that I can learn from you. Thanks
This is an amazing tutorial. If you are a beginner then you can undoubtedly go for this tutoroial.
Thank you so much Hitesh! Amazing tutorial, to the point, as it should be! 👏👏
Chai aur Code ❤ . Exceptional mentor 🙌
just finished. good course. he's a great teacher. now im gonna go do a bigger tutorial that uses this stuff.
if someone was struggling with it - seems like in newer versions of typescript it might be crucial to define the argument name when trying to annotate types for a function object argument input:
example:
function createUser(user: {name: string, email: string, isPaid: boolean})
instead of:
function createUser({name: string, email: string, isPaid: boolean})
at least what I got when trying to follow along - the code editor and it's typescript checker seemed to treat the latter definition as if I was destructuring the argument, not type-annotating it.
Background looks good to me.. this video really seems protecting our eyes from brighter background 😊
Typescript types : string, number, boolean, array , null ,undefined , any noImplicitAny, object, union
and subscribe
wow.. never thought this would happen but you guys did it... thanks alot... Indeed Hitesh is a great tutor.
Finished the whole series. It is really great. Thanks Hitesh!
mam does this series have switch
i have completed this series today within 4-5 days and gained lot of knowledge required to get start with typescript thanks hitesh sir for the helpful knowledge it was a great run
pro level as always in teaching and in video quality also🔥
Quality is number 1 priority
great course and their is some mistake at 1:01:53 where
check if(isPaid === void 0)
Just right now i am at 4:42:56 and i am getting a very positive feeling i have learn a lot from this video , words cannot describe how great learning experience was .
Thank you very much sir
1:36:32 yes it does allows to push the item into array property which is readonly
1:36:42 yes, it allows pushing value to a readonly variable of type an Array.
but why? explanation plz'
I swear this is the best tutorial of TYPESCRIPT i've ever seen.
I've got 2 udemy popular courses on UDEMY, but this is far more understandable and straight to the point explanation.
thank you @hitesh
Thank you so much hitesh sir for the best tutorial of typescript.👏🙌
I was actually looking for a typescript tutorial since 2 days. Started many but then saw your post on Linkedin.
I hope it will be a good one. Starting now
TYPESCRIPT is looking too much easier then HTML because of Hitesh's Explaining skills ! Just Wow.
This is for you Hitesh -♥️
Thank you for uploading such an informative video! I subscribed the channel because of this video!
This is the best video for who are searching to learn Typescript. Hitesh is great teacher.
You are an awesome teacher Hitesh Choudhary . Clear communication , well explained. first time looking at your learning series. very well explained on basics concepts . looking forward to learn from your tutorials.
Your method of teaching is good. Handling and clearing small small concept also. Thank you
Hitesh is real gem. The quality of content is real gold.
you are a genius brother, keep up it. And create videos for us.
man, i used to hate ts until i found this lesson. Super helpful!
one of the most amazing tutorials about TS, Thank you Hitesh.
Completed the entire video and I am very thankful to the instructor for covering the topics with good instructions and examples. Loved it and can't wait to implement typescript on some projects, Cheers 🥂👩💻
my timestamps:
2:24:03 (thursday/wednesday)
3:15:25 (friday)
3:19:36 (saturday)
4:07:16 (sunday)
FINISHED! (monday)
hope you guys can do it too :) good luck!
अरे ये तो अपना भाई है ❤️🔥
watching in 2024 and yet still relevant video to learn TS. thanks @hitesh and @freecodecamp
This video about Typescript was awesome 😍 and I learned new stuff with this. Can you make a video for Node Express with Typescript and MongoDb ☺.
Beautifully explained, Hitesh, thank you so much. As a beginner I find so useful to be able to learn not only theory but also how it actually works in practice and most common mistakes we can make. This was amazing! 👏👏👏👏👏
If you're looking for a tutorial that's top notch, then look no further, for he is the one that gives you more than you need
2:07:29 put the cursor on the row you want to duplicate and simply press ALT + SHIFT + ARROW DOWN (Windows users) to make a copy of that row.
This is a wicked shortcut, thank you John
And the legend is here guys 🙌.
He's one of the best teachers on the internet 🔥. You're going to love this tutorial
the way you show the path how and how much a student should learn is simpy the best.
Really good tutorial. Very precise and educational.
The main difference between void and never is that
void: even when we dont write explicit return in functions, it returns undefined by default. That's the default behaviour of javascript.
never: would mean that you are doing something in function that will never let the "return" happen. Like throwing an error. Would mean that the default return undefined also wouldn't happen here.
Easy to understand and very informative. Thanks Sir
1:36:34 -> Yes, we can push values to id if it is an array and if id is read only.
enum for enumerate.
🎯Course outline for quick navigation:
[00:00-21:43]1. Typescript and its importance
-[10:40-11:09]Typescript allows transpiling typescript code into javascript for building components like react, using .tsx extension.
-[15:04-15:40]Typescript is a development tool dependent on javascript. setting up an environment to write typescript will be covered in the next video.
-[17:00-17:58]Focus on core system wide typescript installation and project configuration for better code production.
-[20:22-20:52]Installed typescript using sudo command, quick and simple process.
[21:43-46:57]2. Typescript in vs code and its basics
-[27:24-27:53]Hitesh introduces typescript series, starts slow, picks up pace later.
-[37:47-38:14]Collaborators can benefit from safety features in code, preventing errors like 'property touppercase does not exist on type number'.
-[39:18-39:51]Vaish introduces a new video on typescript series, focusing on best practices and covering numbers, booleans, strings, and type inference.
-[41:46-42:12]Javascript has limited number-related methods, like toexponential and tolocalestring.
-[44:48-45:15]Using typescript for better code, it detects and prevents errors, ensuring type safety.
-[46:26-46:57]Tutorial on typescript, emphasizing colons and types, urging 70 non-subscribers to subscribe.
[46:57-01:01:02]3. Typescript best practices
-[57:40-58:10]During user sign up, name, email, and password are requested, but they are marked as 'any' type.
-[01:00:16-01:00:51]Discussing passing default values for email and paid in a simple string and boolean format, without encountering any complaints.
[01:01:02-01:14:52]4. Typescript syntax, benefits, and functions overview
-[01:03:16-01:03:44]Typescript emphasizes philosophy of type usage, enhancing javascript.
-[01:03:47-01:04:14]Returning 'hello' instead of a number, a concern for team collaboration.
-[01:06:43-01:07:11]Introduction to handling multiple return types in typescript, using union types, to be discussed in a separate video.
[01:14:52-01:53:31]5. Understanding typescript fundamentals
-[01:27:47-01:28:22]Creating a simple function to define and enforce user data types in typescript.
-[01:31:30-01:31:56]Simplify function definitions to avoid lengthy and complex code.
-[01:38:21-01:38:46]Working on typescript config to stop producing code. mention of credit cards.
[01:53:32-02:14:12]6. Typescript union, literal types, and tuples
-[01:55:22-01:55:51]Typescript allows using multiple types of data, such as 334, without causing errors, making it really useful.
-[01:59:26-01:59:54]The code is being checked for lower case and string verification at line number 30.
-[02:05:20-02:05:53]Tuples in typescript are useful but with limitations. caution advised based on stack overflow thread.
-[02:07:29-02:07:58]Converting data into a tuple, including string, number, and boolean types.
-[02:13:04-02:13:51]In a javascript article on stack overflow, a user discusses issues with typescript array push method not handling tuple type arrays, which was posted a year and 11 months ago.
[02:14:13-02:38:48]7. Typescript enums, interfaces, and methods
-[02:15:24-02:15:52]Enums restrict choices in e-commerce orders, e.g., wish list, delivered, shipped, returned.
-[02:27:49-02:28:17]Read-only fields, like a db id, should be numbers, not optional, and filled in. the advantage is similar to past studies.
-[02:29:21-02:29:50]Method must be compulsory and return a string, such as 'trial started.'
-[02:34:43-02:35:16]Integrating a library from github can require adding missing interfaces and files.
-[02:35:39-02:36:08]Adding a github token as a string property and accessing functionality through declared variable or constant is a typescript feature loved by many.
-[02:36:33-02:36:58]Using 'extends' keyword to inherit properties and defining roles for admin.
-[02:37:35-02:38:03]Using interfaces in typescript allows for easy extension and inheritance, but caution is needed to avoid conflicts with installed packages or libraries.
[02:38:49-02:53:12]8. Typescript basics, production setup, and node project
-[02:40:21-02:48:59]Creating and configuring a typescript project for production, including typescript compiler and output directory setup.
-[02:51:45-02:52:11]Set up lite server in package.json and enable watch mode for typescript changes.
-[02:52:28-02:52:56]Using 'live server' for web development rather than a light server, as it is more efficient and requires no additional packages.
[02:53:12-03:13:03]9. Typescript classes and setup
-[02:53:51-02:54:17]Late night video session discussing setting up a typescript server for file generation and production-grade server for writing typescript.
-[03:06:53-03:07:24]Choosing to make all items public, reflecting syntactic sugar in professional coding practices.
-[03:07:50-03:08:22]Introduction to getters and setters in javascript, discussing private methods and syntax.
-[03:08:42-03:09:14]Using getters and setters to access and manipulate data in software development.
[03:13:03-03:26:37]10. Typescript classes, interfaces, and usage
-[03:15:28-03:15:55]Access modifiers in programming restrict property access.
-[03:21:25-03:21:54]The interface will include additional properties such as a filter and photo burst mode. it will be the basis for the entire application.
[03:26:37-04:08:23]11. Typescript abstract classes and generics
-[03:31:56-03:34:49]Creating an advanced class with properties, implementing abstract methods, and utilizing typescript features.
-[03:43:04-03:43:28]Defining specific data types and return values, including 'any' type.
-[03:48:32-03:49:01]Learning to use arrow functions in typescript, exploring documentation examples.
-[03:49:23-03:49:55]The video discusses defining arrays with possible cases and confusion in building them.
-[04:00:07-04:00:32]Function expects numeric values, but problem arises with strings.
[04:08:23-04:46:24]12. Typescript type narrowing and discriminated unions
-[04:27:42-04:28:07]Code involves checking if a method is not undefined, then returning pet as a fish.
-[04:36:12-04:36:38]Creating a function to determine true shape from circle or square.
-[04:38:40-04:39:15]Code review with exhaustive check, only two cases.
-[04:39:27-04:39:52]New payment status 'authorized' introduced, alongside 'captured' and 'refunded'.
-[04:45:58-04:46:21]Encouraging support for sharing and enjoying the series.
offered by Coursnap
I used types script in ionic 3 in 2019 without knowing A-Z depth of type script. It's very beautiful ..
Let me be honest , finding THE HITESH CHOUDHARY was best thing happened to me , while my journey 😊
Completed!! Thanks Hitesh :)
Hitesh your great at one word
Really Proud to have you sir on a Freecodecamp video ♥️♥️🤩👌🏼
1:36:00-> we should be able to add value even if it is readonly.the readonly modifier only applies to the variable itself, not its internal properties
very pleased for the free content, i'm gonna eat this in a row
you are a good human as well thanks for your efforts
Really, the way Hitesh explained each and every concept, they seemed to be a cup of tea, although those were not.
Bhai ki English itni achi hai ki, me tutorial sirf english sikhne ke liye dekhta hu
😂
Great Typescript series, easily learnt a lot from this tutorial. Thank you Hitesh Choudhary
1. The primitives
a. string
b. number
c. boolean
d. bigint
e. symbol
2. Arrays
3. Any
- noImplicitAny
4. Object
5. Union
6. Interface
7. Literal
8. null
9. undefined
10. Enum
Hi 70% of people who are watching haven't subscribed to this channel . LMAO!!
guys tbh He deserves to be subscribed ! go and kill the button. superb effort !!
feeling God's supermacy . carry on sir
Favorite teacher on favourite ed tech. channel....OG IS HERE
😁
This is a good lesson. It demystifies the difference between typescript and JavaScript. I am much more confident to learn other web technology after watching this wonderful video.
For 43:30, keep in mind that there ARE cases where type inference is bad and you'll want to be type explicit. One such case is when the code gets complex enough that to figure out what type it should be requires hunting through multiple files, in this case explicitly typing is a good idea to prevent a change many files away from breaking your code (without throwing error at compilation).
There are other cases, too. So it is generally preferred, but not required, to avoid explicit typing. You will usually know when that is the case.
1:36:36 Yes, we can push and pop because it only prevents overwriting the value
Thank you! Great introduction. Helped me a lot!
Enum is short for "enumerations", which means "specifically listed".
I'm glad to say I finally finished this course. Thanks Hitesh :)
I learned typescript using these series. Thanks very much sir Hitesh
If you are using vs code terminal in Windows use yarn or npm before tsc
tsc intro.ts -- Wrong one
yarn tsc intro.ts -- Wright one
npm tsc intro.ts -- Wright one
Wish TH-cam was smart enough to suppress "70% are not subscribed". Damn it, I'm subscribed to this.
Tuples work fine when you set their types as string and number. However, if you try to push a Boolean value into the first index, TypeScript does not allow it. but If you keep the value at the zero index as a string, it is possible to push a number into the tuple.
I like this guy I know I am too late to comment but Its honest, Thanks, really helpful and your teaching sense is nice.
There's no doubt this is the best one . Love from Bangladesh boss
I love this course i never ewatch any course full this sis the firstone great make
One of the best instructor 💯🚀
Just finished this series. You're a great teacher @hitesh and I'm already your happy subscriber :) Thank you for making this.