Stage 1 of 7 · 9 lessons · ~2 months
JavaScript and TypeScript
Learn the language your apps will be written in before touching UI code. Null safety, collections and async code matter more on mobile than most beginners expect.
Start: Values, types and equalityLessons· one lesson for each topic, in this order
- 1Values, types and equalityLesson
- 2Functions, closures and thisLesson
- 3Arrays, objects and destructuringLesson
- 4Immutable updatesLesson
- 5TypeScript types and interfacesLesson
- 6null, undefined and optional valuesLesson
- 7Promises and async/awaitLesson
- 8Errors in sync and async codeLesson
- 9Modules and npmLesson
Start with· follow one of these
- CoursePaidGrokking JavaScript Fundamentals
Design Gurus · Beginner · $50
Beginner JavaScript with an exercise after most lessons
- GuideFreeJavaScript.info
Ilya Kantor
Free and thorough: Part 1 is the language, skip the browser chapters in Part 2
Practise
Keep handy
Also worth your time
Before moving on: Solve 15 exercises on Exercism in your language, then write a small console program, such as a to-do list or a grade calculator, that uses classes, collections, error handling and one async call.

Most React Native pain is JavaScript pain: closures, async code and accidental mutation. Write TypeScript from the start, because the compiler catches the undefined property crash before your phone does.