Learn TypeScript - Full Tutorial

Поділитися
Вставка
  • Опубліковано 1 лют 2025

КОМЕНТАРІ • 942

  • @HiteshCodeLab
    @HiteshCodeLab 2 роки тому +1526

    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

  • @hamsitava5725
    @hamsitava5725 2 роки тому +583

    After this course I learned that 70% of viewers are not subscribers and we shall hit the subscribe button. Thank you Hitesh

    • @Abdlmnn1
      @Abdlmnn1 Рік тому +38

      What about Typescript? Didn't you learn that? 😅

    • @cowabunga2597
      @cowabunga2597 Рік тому +8

      @@Abdlmnn1 no 😀

    • @MrDJsArcade
      @MrDJsArcade Рік тому +3

      Hahaha. So true. I’m gonna go subscribe now. Like 20 times.

    • @RaviPrajapati-uy1wm
      @RaviPrajapati-uy1wm 11 місяців тому +1

      This is amazing typescript series I love it❤❤

    • @abidalipkm2065
      @abidalipkm2065 10 місяців тому

      😂

  • @francismaina8754
    @francismaina8754 Рік тому +21

    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.

  • @manomancan
    @manomancan Рік тому +12

    What an amazing teacher, honestly. So eloquent and to the point.

  • @Viralvlogvideos
    @Viralvlogvideos 2 роки тому +168

    Hitesh Choudhary is one of my favorite teachers who makes complex topics into simple. Great to see Hitesh here 😃

    • @aarooral7997
      @aarooral7997 2 роки тому

      Finally i found you 😂😂 you are so famous Yarr 😂😂

    • @Viralvlogvideos
      @Viralvlogvideos 2 роки тому +3

      @@aarooral7997 how 🤔

    • @aarooral7997
      @aarooral7997 2 роки тому +1

      @@Viralvlogvideos i know you from fsjs bro

    • @thefreemonk6938
      @thefreemonk6938 7 місяців тому

      @@aarooral7997 What's fsjs?

  • @MuhammadFaiz-nr1uu
    @MuhammadFaiz-nr1uu Рік тому +52

    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

    • @unleashedjanebi
      @unleashedjanebi Рік тому +2

      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

  • @gulraizcodes
    @gulraizcodes 2 роки тому +62

    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. ✨

  • @Galing28
    @Galing28 11 місяців тому +7

    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!

  • @haseebsheikh6101
    @haseebsheikh6101 2 роки тому +38

    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
      @nitilpoddar Рік тому

      were you able to get some jobe or internship after this?

    • @unuefeejovwoke6609
      @unuefeejovwoke6609 Рік тому

      Did you learn JavaScript first?

    • @haseebsheikh6101
      @haseebsheikh6101 Рік тому

      @@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

    • @haseebsheikh6101
      @haseebsheikh6101 Рік тому

      @@unuefeejovwoke6609 yes

    • @unuefeejovwoke6609
      @unuefeejovwoke6609 Рік тому

      @@haseebsheikh6101 so can't I learn without knowing much on JavaScript? I'm a python developer and wanna learn typescript

  • @jamesmou9180
    @jamesmou9180 Рік тому +4

    One of the best comprehensive tutorials I have watched in UA-cam!

  • @burhanuddinlokhandwala5871
    @burhanuddinlokhandwala5871 2 роки тому +19

    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.

  • @jack_of_all
    @jack_of_all 2 роки тому +41

    Hitesh is one of my favourite instructors on the internet, it's a great feeling to see him on this channel

  • @colinmarshall6634
    @colinmarshall6634 Рік тому +166

    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!

    • @davinder95
      @davinder95 Рік тому +4

      u are ryt bro

    • @manoyal
      @manoyal Рік тому +2

      What is Ienumerator equivalent in typescript.. I used it alot in my unity games

    • @teodor-valentinmaxim8204
      @teodor-valentinmaxim8204 Рік тому +2

      I mean, yeah, writing "Hello, World!" is pretty much the same

    • @serg1778
      @serg1778 Рік тому +4

      Lol,I think you don't know C#,otherwise you wouldn't say that

    • @gabrielgitonga1252
      @gabrielgitonga1252 Рік тому

      He is a great teacher indeed

  • @shashanksams
    @shashanksams 2 роки тому +13

    I've been thinking about learning it since many weeks and you guys released it at the right time 😍

  • @alphadnu
    @alphadnu Рік тому +46

    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.

    • @mashoodmemon6987
      @mashoodmemon6987 4 місяці тому +2

      it's not true anymore, i just tried

    • @muneebwaqas400
      @muneebwaqas400 2 місяці тому +1

      its not true I have tried ans ts is allowing me to do it

  • @shamimara5161
    @shamimara5161 2 роки тому +31

    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.

  • @The1stKing
    @The1stKing 2 роки тому +17

    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.

    • @rnsanyo
      @rnsanyo 2 роки тому +2

      does "const" have to do with that?

    • @The1stKing
      @The1stKing 2 роки тому +3

      @@rnsanyo I am not sure about the background logic (how TS works behind the curtain) but "readonly property" behaves exactly like a "const" does.

    • @datcong464
      @datcong464 2 роки тому +3

      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

    • @shubham_v
      @shubham_v 2 роки тому +2

      I think you were going to destroy world

  • @TenzDelek
    @TenzDelek 10 місяців тому +1

    one of the best instructor out there, props to hitesh sir, his js series was exceptionally good

  • @brotto001
    @brotto001 2 роки тому +14

    I wasn't even intending to learn this, but i was literally sucked into it! Good flow!

  • @praveshgupta1993
    @praveshgupta1993 2 роки тому +1

    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

  • @jonnicholson1638
    @jonnicholson1638 Рік тому +8

    This was an amazing tutorial - really enjoyed it from start to finish. Thanks Hitesh!

  • @paulyaokudaya3437
    @paulyaokudaya3437 Рік тому +3

    I was having difficulty grasping the basics from other sites. I am glad to have stumbled upon this. Super progressive explanations

  • @manylovv
    @manylovv 2 роки тому +130

    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

    • @horacinis
      @horacinis Рік тому +12

      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!

    • @OCTsecond
      @OCTsecond Рік тому

      thank you for your explaination

    • @thecalgarians4597
      @thecalgarians4597 Рік тому +1

      I spent half hour on this before I started wondering if someone highlighted this in the comments. Thanks man, great explanation

    • @RiteshKumar-tx1gn
      @RiteshKumar-tx1gn Рік тому

    • @VikrantSingh-z5r
      @VikrantSingh-z5r 8 місяців тому +1

      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)

  • @n-logn
    @n-logn 7 місяців тому

    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

  • @lakshyarajdash
    @lakshyarajdash 2 роки тому +20

    Hey i know this guy and I follow his channel also. He explains things greatly. Thanks for featuring him in the ts course.

    • @noname-qn1lf
      @noname-qn1lf 2 роки тому +1

      What's his channel?

    • @noname-qn1lf
      @noname-qn1lf 2 роки тому +2

      ok its in description box. Hitesh Chaudhary

    • @HiteshCodeLab
      @HiteshCodeLab 2 роки тому +1

      Thanks

    • @lakshyarajdash
      @lakshyarajdash 2 роки тому

      @@HiteshCodeLab please make a video on how to make photo album using nextjs and strapi...

  • @boredsherbet
    @boredsherbet Рік тому +1

    just finished. good course. he's a great teacher. now im gonna go do a bigger tutorial that uses this stuff.

  • @sharayuu
    @sharayuu Рік тому +3

    Finished the whole series. It is really great. Thanks Hitesh!

  • @YCODIES
    @YCODIES 16 днів тому

    In some parts of the video, you mentioned that declaring a function type depends on how you define it, and you preferred this syntax:
    ExperienceCount: (joiningDate: Date, leavingDate: Date) => EmployeeExperienceStatus;
    However, this syntax doesn't allow us to make the function optional within the interface. To make a function optional, we should use the following syntax:
    ExperienceCount?: (joiningDate: Date, leavingDate: Date) => EmployeeExperienceStatus;
    With this ? modifier, the function becomes optional, and we can choose whether to implement it or not.

  • @jeromemanceau4263
    @jeromemanceau4263 2 роки тому +14

    Thank you so much Hitesh! Amazing tutorial, to the point, as it should be! 👏👏

  • @vaishalinaruka8230
    @vaishalinaruka8230 10 місяців тому +1

    This is an amazing tutorial. If you are a beginner then you can undoubtedly go for this tutoroial.

  • @pankajthapaliya2336
    @pankajthapaliya2336 2 роки тому +1

    Hitesh is real gem. The quality of content is real gold.

  • @spycake0019
    @spycake0019 2 роки тому +28

    bro please bring more indian teachers, they are so clear and accurate

  • @shoaibhasan4026
    @shoaibhasan4026 Рік тому +2

    Chai aur Code ❤ . Exceptional mentor 🙌

  • @gamermistri9274
    @gamermistri9274 2 роки тому +23

    TYPESCRIPT is looking too much easier then HTML because of Hitesh's Explaining skills ! Just Wow.
    This is for you Hitesh -♥️

  • @andrewbenyeogor5534
    @andrewbenyeogor5534 Місяць тому

    Awesome tutorials, amazing teacher...this is probably the first time ill be watching a 2 hour + tutorial on youtube

  • @Sandeep-zd6dq
    @Sandeep-zd6dq 2 роки тому +18

    When it comes to high quality tutorials, Hitesh is always on top in my list 🔥😎🙌

  • @rajithasanjayamal2823
    @rajithasanjayamal2823 Рік тому

    This is the best video for who are searching to learn Typescript. Hitesh is great teacher.

  • @Robloxytber1
    @Robloxytber1 2 роки тому +6

    wow.. never thought this would happen but you guys did it... thanks alot... Indeed Hitesh is a great tutor.

  • @stocksandbeyond
    @stocksandbeyond Рік тому

    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

  • @ShubhamVsCode
    @ShubhamVsCode 2 роки тому +6

    Hitesh Sir on freeCodeCamp rocking 😍😍🔥🔥🔥🔥

  • @saieswarreddymenakuru4739
    @saieswarreddymenakuru4739 4 місяці тому

    Just now I finished the course.. I believe that I am now familiar with typescript syntax. Thank you hitesh for this amazing course. Keep up the good work 😊

  • @e-genieclimatique
    @e-genieclimatique 2 роки тому +29

    a project with TypeScript + React + ReduxToolkit that would be a good tutorial

    • @martapfahl940
      @martapfahl940 2 роки тому

      @@manofsteelind So after this tutorial you say I will not know typescript fully?

    • @martapfahl940
      @martapfahl940 2 роки тому

      @@manofsteelind You become a typescript expert by writing apps, if I am writing my apps with react, so how should I become expert then?

    • @paritoshchauhan3266
      @paritoshchauhan3266 7 місяців тому

      @@martapfahl940 you can use TS instead of JS in your react app for TS practice

  • @muthiulhaq
    @muthiulhaq 9 днів тому

    Thank you so much, Hitesh Sir, for this incredibly detailed and well-structured video on TypeScript! 😊
    Your teaching style is so engaging and easy to follow, making even complex concepts feel simple. I truly appreciate the practical examples and the step-by-step explanations-it’s evident how much effort you’ve put into making this video.
    Thanks again for sharing your knowledge with us! 😍

  • @prakashaspanaroma
    @prakashaspanaroma Рік тому +121

    🎯 Key Takeaways for quick navigation:
    00:00 📖 Introduction to the TypeScript Tutorial Series
    01:21 🧐 Understanding TypeScript's Place in the Ecosystem
    02:17 🚀 Diving Deep into TypeScript Characteristics
    03:37 💡 The Importance of TypeSafety in TypeScript
    04:59 🔍 TypeScript and TypeSafety
    06:46 🎢 Beginning the TypeScript Journey
    07:42 🛠️ Understanding TypeScript's Core Functionality
    09:30 🖥️ TypeScript's Role in Development
    10:52 🔄 Conversion of TypeScript to JavaScript
    11:50 🧰 TypeScript as a Development Tool
    15:23 📘 The Importance of Hands-On Learning
    16:23 🖥️ Installing TypeScript System-Wide
    17:45 🔧 TypeScript Installation Steps
    20:57 🚀 Running TypeScript with TSC Command
    21:55 🎯 Setting Up the Development Environment
    22:18 ✍️ Basic TypeScript Syntax
    24:11 🔧 Compiling TypeScript to JavaScript
    26:03 ⚙️ TypeScript Configuration & Playground
    27:19 🎓 Emphasis on Documentation & Learning Pace
    28:42 📊 Understanding TypeScript Types
    29:58 🚫 The Use of "any" in TypeScript
    31:25 📚 TypeScript Documentation Exploration
    32:19 🤝 TypeScript's Role in Collaboration
    34:04 💡 TypeScript Syntax Basics
    35:55 🔧 TSC Compilation and Handling Errors
    36:52 🚫 Ensuring Data Type Consistency with TypeScript
    37:41 🧐 Importance of Reading Documentation
    38:34 🖊️ Writing and Understanding TypeScript Code
    40:26 💡 Dive into Number Data Type in TypeScript
    43:16 🛑 Avoiding Over-Annotation in TypeScript
    44:11 🧠 TypeScript's Type Inference Mechanism
    46:03 📖 TypeScript Syntax and Best Practices
    46:56 ⚠️ Misuse of the "any" Keyword in TypeScript
    48:21 📚 Official TypeScript Documentation on "any"
    50:35 🚫 Avoiding "any" for Robust TypeScript Coding
    51:30 🧐 Proper Use of Functions in TypeScript
    52:26 📝 Basics of Function Creation and Error Handling
    54:41 🚫 Avoiding Inaccurate Type Annotations
    56:29 🔄 Converting Data Types within Functions
    57:25 ✍️ User Signup Function Demonstration
    57:51 🚦 Sign-Up Function Parameters and Types
    59:44 🖊️ Login Function and Default Parameters
    01:02:05 🔍 Ensuring Accurate Return Values
    01:03:25 🌐 TypeScript Philosophy and Application
    01:04:49 🛠️ Annotating Return Types in Functions
    01:06:33 🔁 Understanding Multiple Return Types
    01:07:58 🔄 Looping through Arrays with Map
    01:11:10 📚 Redirecting to Documentation for Advanced Functions
    01:12:06 ⚠️ Specifying Return Types: Void and Never
    01:15:37 🧩 Odd Behaviors in TypeScript
    01:16:34 📜 Objects in TypeScript
    01:19:10 🛠️ Function Definitions & Object Exports
    01:20:59 🔄 Functions Returning Objects
    01:22:52 🤔 Odd Behaviors & Object Handling
    01:25:11 📜 Type Aliases Introduction
    01:26:36 👥 Using Type Aliases for User Data
    01:28:49 📖 Documentation & Practical Usage
    01:32:21 🔍 Quirky Behaviors & Specific Keywords
    01:34:33 🚫 `read only` and Optional Properties in TypeScript
    01:39:08 🔄 Combining Multiple Types
    01:42:18 📋 Understanding Arrays in TypeScript
    01:42:46 🌐 Defining Arrays in TypeScript
    01:48:48 📖 TypeScript Array Documentation Review
    01:50:12 🤝 Introduction to Union Types
    01:50:38 🎤 Importance of Contextual Understanding
    01:51:06 🤹‍♂️ Introduction to Union Types in TypeScript
    01:53:24 🎥 Subscriber Engagement and Advanced Union Usage
    01:58:56 🔍 Union Narrowing & Type Checking
    02:00:44 📊 Union Types in Arrays and Classic Mistakes
    02:04:46 🧩 Introduction to Tuples
    02:07:03 📜 Restricting Array Order with Tuples
    02:10:17 💡 Practical Implementation and Caution
    02:14:20 🚩 Introduction to Enums
    02:14:49 🎯 Enums: Definition and Basics
    02:17:11 ⚙️ Implementing Enums in TypeScript
    02:20:15 🔄 Enum Value Interpretation
    02:22:24 🔄 Use of `const` with Enums
    02:23:44 👤 Introduction to Interfaces
    02:28:16 📜 Methods in Interfaces
    02:30:09 🔖 Defining Methods in Interfaces
    02:33:17 🖥️ Understanding the Role of Interfaces
    02:34:14 🚀 Extending Interfaces & Inheritance
    02:37:51 📚 Distinction between Type and Interface
    02:39:16 🛠️ TypeScript in Production
    02:41:08 🚀 Setting Up TypeScript for Projects
    02:45:40 ⚙️ TypeScript Compilation Configuration
    02:47:54 🌐 Using Live Server for TypeScript Projects
    02:52:02 🎨 Styling and Further TypeScript Discussion
    02:53:51 🌌 Introduction to Advanced TypeScript Use
    02:54:45 🎓 Creating Classes in TypeScript
    02:57:26 🔒 Using TypeScript for Data Safety
    03:00:46 🛡️ Read-only Properties in TypeScript Classes
    03:02:12 📌 Advanced TypeScript Concepts
    03:03:08 🔐 Modifiers in TypeScript
    03:07:40 🚀 Getters and Setters in TypeScript
    03:09:58 📝 Setters in TypeScript
    03:13:40 🚫 Private Methods in TypeScript
    03:15:28 🔒 Access Modifiers and Inheritance in TypeScript
    03:17:46 🖼️ Additional Class Properties in TypeScript
    03:19:52 📐 Interfaces in TypeScript Explained
    03:23:57 📹 Extending Interfaces for Additional Features
    03:26:06 📜 Introduction to Abstract Classes in TypeScript
    03:29:15 🖥️ Practical Implementation of Abstract Classes
    03:33:18 🚀 Advanced Features of Abstract Classes
    03:34:15 🔄 Abstract Classes Recap and Method Overwriting
    03:35:41 🔗 Introduction to Generics in TypeScript
    03:38:23 📖 Generics in Practical Coding and Documentation
    03:42:21 🛠️ Differentiating Generics from Any in TypeScript
    03:45:33 🍾 Creating and Implementing Custom Generics
    03:47:48 📘 Diving Deeper into Generics and Arrow Functions
    03:50:09 🔍 Basics of Defining Generics in TypeScript
    03:52:47 🔄 Arrow Functions and Generics in TypeScript
    03:55:29 📘 Distinguishing Generics Syntax in Codebases
    03:56:20 🏛️ Deep Dive into Generics and its Constraints
    03:57:49 📜 Using `extends` Keyword in TypeScript
    04:01:28 📁 Database Interface and Generic Constraints
    04:02:45 🎓 Selling Courses and Quizzes: Class Types in Generics
    04:05:51 🛍️ Generic Class for Handling Products
    04:07:12 📘 Business Case Logic vs Traditional Problems/Solutions
    04:09:32 🚧 Cautionary Tales in TypeScript
    04:14:26 📚 Understanding Type Guards
    04:17:09 🔍 Advanced Type Narrowing Techniques
    04:22:16 📉 More on Type Narrowing
    04:22:45 🎯 Narrowing TypeScript Types
    04:25:27 🐟 Using Type Predicates in TypeScript
    04:29:33 🔄 Type Coercion and Identification
    04:30:56 📄 Documentation-Based Learning
    04:31:50 ⚙️ Tight Narrowing - Final Steps
    04:37:10 🔄 Never Type & Exhaustive Checks
    04:39:39 📚 Advanced TypeScript Concepts
    04:42:55 🏁 Concluding the TypeScript Series
    Made with HARPA AI

    • @shanisa49141
      @shanisa49141 8 місяців тому +5

      respect for creating this. respect++ for mentioning the AI you used

  • @Prem.s51
    @Prem.s51 Місяць тому +1

    Finally completed the series. Thank you Hitesh Sir💖

  • @beeeeeee42333
    @beeeeeee42333 2 роки тому +13

    hiyteshy chowdary , ok 😆 , This is what i needed 😊😊

  • @anshumansharma4509
    @anshumansharma4509 2 роки тому +1

    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

  • @bernardobalixa4993
    @bernardobalixa4993 2 роки тому +10

    Really good tutorial. Very precise and educational.

  • @arwahsapi
    @arwahsapi 2 роки тому

    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

  • @thedevnoteyt
    @thedevnoteyt 2 роки тому +5

    And the legend is here guys 🙌.
    He's one of the best teachers on the internet 🔥. You're going to love this tutorial

  • @PrasanthN-p2d
    @PrasanthN-p2d Рік тому +2

    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.

  • @FaizKhan-ep7fo
    @FaizKhan-ep7fo 2 роки тому +20

    pro level as always in teaching and in video quality also🔥

  • @fadygamilmahrousmasoud5863
    @fadygamilmahrousmasoud5863 2 роки тому +2

    one of the most amazing tutorials about TS, Thank you Hitesh.

  • @abhisheksoni1522
    @abhisheksoni1522 Рік тому +3

    1:36:42 yes, it allows pushing value to a readonly variable of type an Array.

  • @holaclaris
    @holaclaris 10 місяців тому

    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! 👏👏👏👏👏

  • @cristiano-ronaldo-ur-fans
    @cristiano-ronaldo-ur-fans Рік тому +3

    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.

  • @TrxsTer
    @TrxsTer 8 місяців тому

    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 🥂👩‍💻

  • @The1stKing
    @The1stKing 2 роки тому +12

    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.

  • @neetdemon
    @neetdemon Рік тому

    I'm glad to say I finally finished this course. Thanks Hitesh :)

  • @ramanarc
    @ramanarc Рік тому +11

    Hitesh is a great teacher man! Love his calm composure and ability to explain complex concepts simply

  • @mohitaggarwal4029
    @mohitaggarwal4029 8 місяців тому

    Completed the series. Now, ready to use Typescript. Thank you Hitesh bhaiya

  • @ananthukrishnan313
    @ananthukrishnan313 2 роки тому +4

    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 ☺.

  • @jcarlo9607
    @jcarlo9607 2 роки тому +8

    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

  • @shobhamahadev118
    @shobhamahadev118 Рік тому +2

    Background looks good to me.. this video really seems protecting our eyes from brighter background 😊

  • @harika218
    @harika218 2 роки тому +18

    Typescript types : string, number, boolean, array , null ,undefined , any noImplicitAny, object, union

  • @prashantmestry8199
    @prashantmestry8199 Рік тому +1

    Your method of teaching is good. Handling and clearing small small concept also. Thank you

  • @nijinnazar2160
    @nijinnazar2160 Рік тому +3

    2:12:55 I think now TS have introduced that ability for the tuple to restrict pushing or changing the value of array using index to any other type of value than specified. I am currently using v5.1.6

    • @brian9790
      @brian9790 Рік тому +2

      check. it throws an error now. seems like it got fixed now. no push of different types possible anymore

    • @nijinnazar2160
      @nijinnazar2160 Рік тому

      @@brian9790 Yess.

    • @wololoooxd3288
      @wololoooxd3288 Рік тому

      still working for me at v5.1.6

  • @abhishekdas2512
    @abhishekdas2512 2 роки тому +1

    Really Proud to have you sir on a Freecodecamp video ♥️♥️🤩👌🏼

  • @VishalSharma-rn7mt
    @VishalSharma-rn7mt 2 роки тому +3

    Hitesh Sir always rock with his awesome quality tutorial.
    Thank you so much for making this series.

  • @zrotrasukha8733
    @zrotrasukha8733 2 місяці тому

    1:36:37 yes we can push it because typescript perceives read-only as editable or modifiable but not re-assignable, like we are not able to do something User._id = ["new.id'], since we are allowed to change the value but we can make changes to preexisting value.

  • @РамильЗарипов-ь5й
    @РамильЗарипов-ь5й 2 роки тому +4

    Thanks and I subscribed, Hitesh. Great work!

  • @prakashnaikwadi
    @prakashnaikwadi 2 роки тому +2

    One of the best instructor 💯🚀

  • @olukayodeshokunbi3815
    @olukayodeshokunbi3815 2 роки тому +3

    Well thought out & taught tutorial. I love the way you went through the documentation in tandem.
    Thanks for the hard work you put into it.

  • @mahdirafi6537
    @mahdirafi6537 Рік тому

    There's no doubt this is the best one . Love from Bangladesh boss

  • @zlsj861
    @zlsj861 Рік тому +3

    🎯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

  • @Mrviveksidher
    @Mrviveksidher Рік тому

    Thanks!

  • @niikhiilsurani
    @niikhiilsurani Рік тому +2

    Hi Hitesh,
    Thanks a lot for your contribution and I appreciate it.
    if id would be an array, can we push values to the array in the case of READONLY?
    Answer: Yes. it allows push and pop operations.
    type testId = {
    readonly _id: Array
    name: string
    }
    let testIdOne: testId = {
    _id: [1, 2, 3],
    name: "ns"
    }
    testIdOne._id.push(4);
    testIdOne._id.push(5);
    console.log("result->", testIdOne);
    "result->", {
    "_id": [
    1,
    2,
    3,
    4,
    5
    ],
    "name": "ns"
    }

  • @nirajthakur3794
    @nirajthakur3794 8 місяців тому

    1:36:34 -> Yes, we can push values to id if it is an array and if id is read only.
    enum for enumerate.

  • @FacadeMan
    @FacadeMan Рік тому

    Wish UA-cam was smart enough to suppress "70% are not subscribed". Damn it, I'm subscribed to this.

  • @adsick_ua
    @adsick_ua Рік тому +9

    TypeScript is more Java than JavaScript

  • @merxxibeaucoup9093
    @merxxibeaucoup9093 Рік тому

    The is hands down one of the best tutorials ever made

  • @adityamishra9149
    @adityamishra9149 7 місяців тому +3

    Enum full name is Enumeration

  • @rickybhutada2955
    @rickybhutada2955 Місяць тому

    Thanks Hitesh, I think this is best typescript video!

  • @KanhaiyaSahu01
    @KanhaiyaSahu01 4 місяці тому +2

    how many of you are getting motorola ads too
    much .

  • @otabeksodikov2773
    @otabeksodikov2773 Рік тому

    I learned typescript using these series. Thanks very much sir Hitesh

  • @smith0010
    @smith0010 2 роки тому +12

    my life is totally changed 😊. I've been earning $10,250 returns from my $4,000 Investment every 13 days

    • @leonardmorris6798
      @leonardmorris6798 2 роки тому +6

      I've traded with a lot of individuals but
      have never come across anyone as good as
      Mrs Walls , just by applying his
      new strategies I now trade independently. He's the best I can advise any novice investing to trade with him

    • @chukswayne495
      @chukswayne495 2 роки тому +7

      wow .. Amazing to see others trading with Mr Walls , i am currently on my fifth trade with him and my portfolio has grown tremendously

    • @micahll5684
      @micahll5684 2 роки тому +6

      I heard a lot about Mr Walls and how good he is, please how safe are his profits?

    • @leonardmorris6798
      @leonardmorris6798 2 роки тому +5

      @@micahll5684 I trade with him, The profit are secured and over a 100% return on investment directly sent to your wallet.

    • @greatisrael6461
      @greatisrael6461 2 роки тому +5

      I also trade with him, Big thanks to Mr Walls for what he did for my family and I 🙏🤗

  • @vamsireddy8692
    @vamsireddy8692 4 місяці тому

    proud to see you on this channel

  • @strawb3rrie522
    @strawb3rrie522 2 роки тому +1

    great video! prepping for software engineer interviews in a really bad market right now, and Typescript is something a lot of interviewers are asking about

    • @cryionic
      @cryionic 2 роки тому +1

      Why's the market bad? Where you from? Just curious.

    • @betzelem5757
      @betzelem5757 2 роки тому +1

      @@cryionic i live in the US. major tech market crash rn. a lot of people are getting laid off or benched

    • @cryionic
      @cryionic 2 роки тому +2

      @@betzelem5757 oh, yes, I read a little bit about that I think. Big players laying of a lot of people. Should dig deeper into this, curious as to why. If you have any good articles to share, please do.
      Good luck on your interviews!

  • @srivishnu8983
    @srivishnu8983 2 роки тому +1

    Great Typescript series, easily learnt a lot from this tutorial. Thank you Hitesh Choudhary

  • @vimalkumar-zz6pn
    @vimalkumar-zz6pn 2 роки тому +1

    अरे ये तो अपना भाई है ❤️🔥

  • @lord_yzal
    @lord_yzal Рік тому +1

    Finally completed the tutorial. Thanks for the informative and awesome content.

  • @ALIHAMZAAKRAM-oe2su
    @ALIHAMZAAKRAM-oe2su Рік тому +1

    great course and their is some mistake at 1:01:53 where
    check if(isPaid === void 0)

  • @kenhan168
    @kenhan168 Рік тому

    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.

  • @김보민-b5t
    @김보민-b5t Рік тому

    My bookmark
    1/21 39:23
    1/22 46:54
    1/27 1:32:40
    2/7 2:14:34 2:39:41

  • @jayyap39
    @jayyap39 Рік тому +1

    Completed!! Thanks Hitesh :)

  • @vaibhavdhakad1
    @vaibhavdhakad1 Рік тому

    Really, the way Hitesh explained each and every concept, they seemed to be a cup of tea, although those were not.

  • @tessabloomx8660
    @tessabloomx8660 Рік тому

    Finished the course finally.
    It was a great course
    Really cool

  • @amanchaudhary8494
    @amanchaudhary8494 Місяць тому

    Finished the series. Thanks learnt a lot

  • @MuhammadAbdullah-le2xg
    @MuhammadAbdullah-le2xg 24 дні тому

    My Timestamps :
    1:25:15
    2:40:40
    3:56:07
    4:23:21
    Ended

  • @hawkeyeyt
    @hawkeyeyt Рік тому

    Just finished this series. You're a great teacher @hitesh and I'm already your happy subscriber :) Thank you for making this.