pages.courses.show.header

pages.courses.show.course_updated

pages.courses.show.subscribe

pages.courses.show.subscription_description

pages.courses.show.included.header

pages.courses.show.included.theory.value
pages.courses.show.included.exercises.value
pages.courses.show.included.questions.value
pages.courses.show.included.self_study
pages.courses.show.included.extra_materials
pages.courses.show.included.extended_material

models.attributes.base.description

JavaScript functions go much beyond what you already know! You will learn about first-class objects, lambda functions, and higher-order functions in this course. Learn how to do the "mapping", "filtering", and "aggregation" operations, as well as how to pass and take an infinite number of arguments. Learn about external libraries that make programming much simpler.

pages.courses.show.skills

  • Use advanced function capabilities to write concise and efficient code
  • Separate pure functions from those with side effects
  • Use higher-order functions (map/filter/reduce) to handle collections
  • Recognize the imperative and declarative (functional) paradigms

pages.courses.show.syllabus

1

About course

Learn about the course, its structure, objectives, and goals

2

Pure functions

Learn about the concepts of determinism and side effects

3

Command–query separation

Meet the CQS principle

4

Rest parameter syntax (packing arguments)

Learn how to use the rest syntax to form an array from function arguments

5

Spread syntax (unpacking arguments)

Learn how to use the spread syntax with a function call

6

Parameter destructuring

Learn how to apply the destructuring assignment for function parameters

7

First-class objects

Consider functions as data. Learn about arrow functions

8

Higher-order functions

Learn how to build abstractions using functions

9

Mapping

Learn how to use the map method

10

Filtering

Learn how to use the filter method

11

Reducing

Learn how to use the reduce method

12

Signals

Come to grips with the concept of standard interface

13

Programming paradigms

Become familiar with the "paradigm" concept and examine the differences between imperative and declarative paradigms

14

Building abstraction using functions

Summarize knowledge about functions and get to grips with the concept of abstraction

pages.courses.show.challenges

1

Configuration parsing

2

NRZI encoding

3

Vertical histogram

4

Sea Battle 2

5

IP converter

6

Anagrams filter

7

Horizontal histogram

8

Coeval counter

9

Merging dictionaries

10

Same parity

11

Color model conversion

12

Bar chart

13

IPv6 validator

pages.courses.show.recommended_programs

Course Cover
  • pages.courses.pros.right_in_browser
  • pages.courses.pros.lifetime_access
  • pages.courses.pros.learn_as_you_go
pages.courses.show.subscribe

pages.courses.show.subscription_description